可编程

将表写入文件

描述

例子

writetable (T.写表T.到逗号分隔的文本文件。文件名是表的工作空间变量名,附加扩展名。文本文件.如果可编程无法从输入表名称构建文件名,然后它写入文件table.txt

每个变量的每个列T.成为输出文件中的列。变量名称T.在文件的第一行成为列标题。

writetable (T.文件名写入名称和扩展名指定的文件文件名

可编程根据指定的扩展名确定文件格式。扩展必须是以下之一:

  • 。文本文件.DAT.,或. csv用于分隔文本文件

  • xls.xlsm.,或.xlsx.对于Excel.®电子表格文件

  • .xLSB.Excel for Windows系统支持的Excel电金宝app子表格文件®

例子

writetable (___名称,值将表格写入文件,其中包含一个或多个指定的其他选项名称,值对参数,可以包括先前语法中的任何输入参数。

例如,您可以指定是否将变量名作为列标题写入输出文件。

例子

全部折叠

创建一个表。

t =表(['M'“F”'M',[45 45;41 32;40 34],...{“纽约”“CA”'嘛'},真的,假的,假)
T =3×4表Var1 Var2 Var3 Var4  ____ ________ ______ _____ 45米45{“纽约”}真F 41 32{“CA”}假40 M 34{‘马’}假

将表格写入逗号分隔的文本文件并显示文件内容。

writetable (T)

可编程输出一个名为T.txt

类型“T.txt”
Var1,Var2_1,Var2_2,Var3,Var4 M,45,45,NY,1 F,41,32,CA,0 M,40,34,MA,0

可编程给变量名添加一个唯一的后缀,Var2,上面两列对应的数据。

创建一个表。

t =表(['M'“F”'M',[45 45;41 32;40 34],...{“纽约”“CA”'嘛'},真的,假的,假)
T =3×4表Var1 Var2 Var3 Var4  ____ ________ ______ _____ 45米45{“纽约”}真F 41 32{“CA”}假40 M 34{‘马’}假

将表写入一个以空格分隔的文本文件myData.txt并显示文件内容。

writetable (T)'mydata.txt''delimiter'' ')类型'mydata.txt'
var1 var2_1 var2_2 var3 var4 m 45 45 45 ny 1 f 41 32 ca 0 m 40 34 ma 0

可编程给变量名添加一个唯一的后缀,Var2,上面两列对应的数据。

创建一个表。

lastname = {“史密斯”'约翰逊'”威廉姆斯'琼斯'“棕色”};年龄=[38,43岁,38;40;49);身高= [71;69;64;67;64);重量= [176;163;131;133;119);血压= [124 93;109 77;125 83;117 75;122 80);T =表(年龄、身高、体重、血压,...“RowNames”,姓)
T =5×4表年龄高度重量血压___ ______ ______ _____________史密斯38 71 176 124 93 johnson 43 69 163 109 77威廉姆斯38 64 131 125 83 jones 40 67 133 117 75棕色49 64 119 122 80

写表格,T.,转换为以逗号分隔的文本文件,称为mypatientdata.dat.,显示文件内容。

writetable (T)“myPatientData.dat”'writerowanames',真正的)类型“myPatientData.dat”
行,年龄,身高,体重,血压_1,血压_2史密斯,38,71,176,124,93 johnson,43,69,163,129,77威廉姆斯,38,64,131,125,83岁,40,67,133,117,75棕色,49,64,119,122,80

包含行名称的第一列具有列标题,.这是属性中表的第一个维度名T.Properties.DimensionNames

将表中的英语日期转换为德语日期,并将该表写入文件。

创建包含datetime带有英文日期的数组。创建数字数据的列向量以匹配日期。

d = datetime({' 01 - 1月- 2014“01 - 2月- 2014”' 01 - 3月- 2014});D.Format =“dd嗯yyyy”;X1 = (20.2; 21.6; 20.7);X2 = (100.5; 102.7; 99.8);T =表(D, X1, X2)
T = D X1 X2 ________________ ______ 01 2014年1月20日20.2 100.5 01 2014年2月21.6 102.7 01 2014年3月20.7 99.8

将表写入文本文件。使用使用的日期的区域设置为德语指定德语DateLocale名称-值对参数,并在文本文件中显示日期。

writetable (T)“myfile.txt”'datelocale'“de_DE”);类型myfile.txt
D、X1、X2 01 2014年1月,20.2,100.5 2014年2月,21.6,102.7 01 März 2014年,20.7,99.8

当您的数据包含外语或非ASCII字符时,请使用编码参数来确保文件正确写入。首先,将提供的表加载到工作区中。然后,使用默认编码将表写入文件。最后,用来写下表“utf - 8”编码并检查结果。

负载Table_Japanese_Characters.mat其中包含表T.表的预览如下所示。请注意,该表包含两个具有日文字符的列。

负载('table_japanese_characters.mat'

将表写入文件。这可编程函数在写文件时使用系统默认编码。根据您的系统设置,结果可能不同。要检查生成的文件,请使用readtable函数。注意可编程没有成功写入包含外语字符的列(1和3)。

writetable (T)“myTable.txt”myTable = readtable()“myTable.txt”
myTable =9×3表A B C _____ ______ _______ '' 458.98 '' '' 530.14 '' '' 289.4 '' '' 434.81 '' '' 186.44 '' '' 0 '' '' 231.29 '' '' 311.86 '' '' 239.93 ''

如果表包含外语或非ascii字符,则必须使用'编码'参数以确保正确写入数据。集'编码'“utf - 8”它支持广泛的金宝app外语和非ascii字符。要检查生成的文件,请使用readtable函数。使用正确的编码参数可编程函数成功写入数据。

writetable (T)“myTable_UTF8.txt”'编码'“utf - 8”)mytable_utf8 = readtable(“myTable_UTF8.txt”'编码'“utf - 8”
mytable_utf8 =9×3表A B C  _______ ______ ___________ ' 南西“458.98”冬の嵐“南東“530.14”冬の嵐“南東“289.4”冬の嵐‘西“434.81”機器の故障“中西部“186.44”深刻な嵐‘西' 0 '攻撃”“西“231.29”機器の故障”“西“311.86”機器の故障“北東‘239.93’火災”

创建一个表。

t =表(['M'“F”'M']、[45、41、36),...{'纽约,纽约''圣地亚哥,加州'“波士顿,马”},真的,假的,假)
T =3×4表Var1 Var2 Var3 Var4  ____ ____ _________________ _____ 米45{“纽约,纽约”}真的F 41{“圣地亚哥CA”}假米36{“波士顿”}假

将表写入一个以逗号分隔的文本文件myData.csv并查看文件内容。使用“QuoteStrings”名称值对参数以确保第三列中的逗号不被视为分隔符。

writetable (T)“myData.csv”'delimiter'','“QuoteStrings”,真正的)类型“myData.csv”
var1,var2,var3,var4“m”,45,“纽约,纽约”,1“f”,41,“San Diego,Ca”,0“M”,36,“波士顿,MA”,0

创建一个表。

t =表(['M'“F”'M',[45 45;41 32;40 34],...{“纽约”“CA”'嘛'},真的,假的,假)
T =3×4表Var1 Var2 Var3 Var4  ____ ________ ______ _____ 45米45{“纽约”}真F 41 32{“CA”}假40 M 34{‘马’}假

将该表写入名为mydata.xls..在5×5区内的第一个纸上的数据包括拐角处B2.F6..您可以通过指定与工作表对应的索引来更改工作表来写入。

writetable (T)'mydata.xls''床单',1,“范围”'B2:F6'

Excel®填充电子表格的行B6.F6.#n / a因为指定的范围大于输入表的大小T.

您可以编写包含包含任何字符(包括空格和非ascii字符)的变量名的表格数据。创建一个具有任意变量名的表,并将该表写入一个文本文件。然后,读取表格数据,同时保留原始变量名。

创建一个包含三个具有任意变量名的变量的表。第一个和第三个变量名包含空格和非ascii字符。

lastname = {“桑切斯”'约翰逊''李'“Diaz”“棕色”};年龄=[38,43岁,38;40;49);吸烟者=逻辑([1,0,1,0,1]);varNames = {'姓'“年龄”'吸烟(1或0)'};T =表(LastName、年龄、抽烟,“VariableNames”,varnames)
T =5×3表姓名年龄吸烟者(1或0 ) ___________ ___ _______________ {' 桑切斯的38}真{“约翰逊”}43假{‘李’}38真{“Diaz”}40假{“棕色”}49真的

将数据写入文件“sampletable.txt”

writetable (T)“sampletable.txt”

使用readtable.默认情况下,MATLAB®将包含空格和非ASCII字符的任何变量名称转换为有效的MATLAB®标识符。例如,Matlab®转换变量名称'姓''姓','吸烟(1或0)'“Smoker_1or0_”.要读取表格数据同时保留变量名,请设置'preservevariablenames'参数真正的

T_preserve = readtable (“sampletable.txt”'preservevariablenames',真正的)
T_preserve =5×3表姓氏年龄吸烟者(1或0)___________ _____________________ {'sanchez'} 38 1 {'johnson'} 43 0 {'li'} 38 1 {'diaz'} 40 0 {'brown'} 49 1

将数据作为新行追加到具有现有数据的表的底部。

创建一个表。

虫胶= {“帝王蝶”“七点飘”'兰花螳螂'...'美国大黄蜂''蓝色Dasher Dragonfly'};InsectOrder = {'Lepidoptera'“鞘翅目”“螳螂目”膜翅目昆虫的'odonata'};Insectfamily = {“Nymphalidae”'coccinellidae'“Hymenopodidae”...蜜蜂科的“蜻蜓科”};PredatoryInsect =逻辑([0,1,1,0,1]);T =表(InsectSpecies InsectOrder、InsectFamily PredatoryInsect)
T =5×4表虫胶昆虫昆虫家庭掠夺性灭活符号_____________________________________ _______________ {'lepidoptera'} {'lepidoptera'} {'nymphalidae'} false {coccinellidae'}真正的{'coccinellidae'}真实的{'兰花螳螂'}{'mantodea'} {'hymenopodidae'}真实的{'美国bumblebee'} {'hymenoptera'} {'apidae'} false {'蓝色dasher dragonfly'} {'odonata'} {'libellilidae'}真的

将表T写入一个名为enericcollection.txt.txt.

writetable (T)“InsectCollection.txt”'writerowanames',真正的)

以表的形式创建要添加到现有表中的新数据。

newinsect = table({'红带叶蝉'},{'hemiptera'},{'cicadellidae'}、逻辑([0]))
newInsect =1×4表Var1 Var2 Var3 Var4  _________________________ _____________ ________________ _____ {' Red-banded叶蝉的}{“半翅类”}{叶蝉科的}假

附加newInsectenericcollection.txt.txt.使用“写模式”,“添加”名称值对参数。

可编程(NewInsect,“InsectCollection.txt”'writemode'“添加”...“WriteVariableNames”假的,'writerowanames',真正的)

将表读回工作区。

readtable (“InsectCollection.txt”
ans =.6×4表InsectSpecies InsectOrder InsectFamily PredatoryInsect  _________________________ _______________ _________________ _______________ {' 帝王蝶”}{鳞翅目的}{‘Nymphalidae} 0{“七点飘”}{的鞘翅目}{瓢虫科的}1{“兰花螳螂”}{“螳螂目”}{‘Hymenopodidae} 1{“美国大黄蜂”}{膜翅目昆虫的}{“蜂科”}0{“蓝蜻蜓”}{“蜻蜓科”}{“蜻蜓科”}{“唇瓣科”}1{“红条纹叶蝉”}{“半翅目”}{“叶蝉科”}0

输入参数

全部折叠

输入数据,指定为一个表。

文件名,指定为字符向量或字符串标量。

根据你写信的地点,文件名可以采取其中一种形式。

位置

形式

当前文件夹

要写入当前文件夹,请指定文件的名称文件名

例子:'mytextfile.csv'

其他文件夹

要写入与当前文件夹不同的文件夹,请指定完整路径名或相对路径名文件名

例子:“C: \ myFolder \ myTextFile.csv”

例子:“myFolder \ myExcelFile.xlsx”

偏远的地点

写入远程位置,文件名必须包含作为表单的统一资源定位符(URL)指定的文件的完整路径:

scheme_name://path_to_file./my_file.ext

根据你的偏远位置scheme_name可以是该表中的一个值。

偏远的地点 scheme_name
亚马逊S3™ s3
Windows Azure®Blob存储 wasbwasbs
HDFS™ hdfs

有关更多信息,请参见使用远程数据

例子:s3: / / bucketname / path_to_file / my_file.xlsx '

  • 如果文件名包含文件扩展名,然后写入函数根据扩展名确定文件格式。否则,写入函数将创建一个逗号分隔的文本文件并附加扩展名。文本文件.或者,您可以指定文件名没有文件的扩展名,然后包含'文件类型'名称 - 值对参数指示文件类型。

  • 如果文件名不存在,然后写作函数创建文件。

  • 如果文件名是现有文本文件的名称,则写入函数将覆盖该文件。

  • 如果文件名是现有电子表格文件的名称,然后写作函数将数据写入指定位置,但不会覆盖输入数据范围之外的任何值。

数据类型:char|字符串

名称-值对的观点

指定可选的逗号分隔对名称,值论点。的名字参数名和价值是对应的值。的名字必须出现在引号内。您可以按如下顺序指定几个名称和值对参数name1,value1,...,namen,valuen

例子:“WriteVariableNames”,假的指示不应将变量名包括在输出文件的第一行中。

文本和电子表格文件

全部折叠

文件类型,指定为逗号分隔对组成'文件类型'和包含的字符矢量或字符串“文本”“表格”

'文件类型'名称-值对必须与文件名输入参数。属性,不需要指定'文件类型'的名称-值对参数文件名输入参数包括一个标准的文件扩展名。以下标准文件扩展名可由写入函数识别:

  • 。文本文件.DAT.,或. csv用于分隔文本文件

  • xls.xlsm.,或.xlsx.用于Excel电子表格文件

  • .xLSB.Excel for Windows系统支持的Excel电金宝app子表格文件

例子:'filetype','电子表格'

数据类型:char|字符串

将变量名写入列标题的指示符,指定为逗号分隔的对,由“WriteVariableNames”和任何一种真正的

指示器

行为

真正的

写入函数包括作为输出列标题的变量名称。这是默认行为。

正在编写的函数在输出中不包括变量名。

在第一列中写入行名称的指示符,指定为逗号分隔对'writerowanames'和任何一种真正的

指示器

行为

可编程不包括行名来自T.在输出。这是默认行为。

真正的

可编程包括来自的行名称T.作为输出的第一列。

如果两者都是“WriteVariableNames”'writerowanames'逻辑指标是真正的, 然后可编程使用属性的第一个维度名称T.Properties.DimensionNames作为输出的第一列的列标题。

用于写入日期的区域设置,指定为逗号分隔的对,由'datelocale'一个字符向量或者字符串标量。写作时datetime文件的值,使用DateLocale指定所处的区域设置可编程应该写一个月和一周的名称和缩写。字符矢量或字符串采用表格xx_YY,在那里xx是一个小写的ISO 639-1两字母代码,表示一种语言,以及YY是一个大写ISO 3166-1 Alpha-2代码,指示一个国家。有关区域设置的常见值列表,请参阅语言环境的名称-值对参数datetime函数。

写作功能忽略了'datelocale'只要日期写入Excel格式的日期时参数值。

例子:“DateLocale”、“ja_JP”

数据类型:char|字符串

写入模式,指定为逗号分隔的对,由'writemode'一个字符向量或者字符串标量。请根据文件类型选择写方式。

文件类型

写模式

文本文件

  • '覆盖'(默认)-覆盖文件。

  • “添加”—追加数据。

如果指定的文件不存在,则写入函数将创建并写入一个新文件。

电子表格文件

  • '到位'(默认) - 仅更新输入数据所占用的范围。写入功能不会更改输入数据占据的范围之外的任何数据。

    • 如果未指定纸张,则写入函数写入第一个表。

  • “overwritesheet”- 清除指定的纸张并将输入数据写入清除表。

    • 如果未指定表格,则写入功能清除第一个纸张并将输入数据写入其中。

  • “添加”- 写入函数将输入数据附加到指定表的占用范围的底部。

    • 如果未指定表格,则写入功能将输入数据附加到第一张纸张的占用范围的底部。

  • 'replacefile'- 从文件中删除所有其他工作表,然后清除并将输入数据写入指定的工作表。

    • 如果未指定表格,则写入函数从文件中删除所有其他工作表,然后清除并将输入数据写入第一张。

    • 如果指定的文件不存在,那么写入函数将创建一个新文件,并将输入数据写入第一个工作表。

  • 什么时候WriteVariableNames设定为真正的,写入功能不支持写入模式金宝app“添加”

  • 为电子表格文件:

    • 当写模式是“添加”,写函数不支持金宝app范围参数。

    • 如果指定的文件不存在,则写入函数执行与'replacefile'

例子:“写模式”,“添加”

数据类型:char|字符串

仅文本文件

全部折叠

字段分隔符,指定为逗号分隔的对,由'delimiter'以及包含以下说明符之一的字符向量或字符串标量:

说明书

字段分隔符

','

'逗号'

逗号。这是默认行为。

' '

'空间'

空间

' \ t '

“标签”

标签

“;”

'半'

分号

“|”

“酒吧”

竖线

你可以使用'delimiter'名称-值对仅用于分隔文本文件。

例子:'delimiter','space'

数据类型:char|字符串

用于写入引用文本的指示符,指定为逗号分隔的对,由“QuoteStrings”和任何一种真正的.如果“QuoteStrings”真正的,然后writing函数将文本用双引号括起来,并用两个双引号替换作为该文本一部分的任何双引号字符。

你可以使用“QuoteStrings”只对带分隔符的文本文件使用名称-值对。

与文件相关联的字符编码方案,指定为包含的逗号分隔对'编码'“系统”或标准字符编码方案名称。当不指定任何编码时,写函数使用UTF-8来写文件。

例子:“编码”,“utf - 8”使用UTF-8作为编码。

数据类型:char|字符串

电子表格文件只

全部折叠

要写入的工作表,指定为逗号分隔的对,由'床单'以及包含工作表名称或指示工作表索引的正整数的字符向量或字符串标量。工作表名称不能包含冒号().要确定电子表格文件中的表名,请使用表格= SheetNames(文件名).有关更多信息,请参见sheetnames

按名称或索引指定要写入的工作表:

  • name—如果指定的工作表名在文件中不存在,则写入函数在工作表集合的末尾添加一个新工作表。

  • 索引 - 如果指定的纸张索引是索引大于工作表的数量,则写入函数追加空工作表,直到工作簿中的工作表数量等于纸张索引。写入功能还生成警告,指示它已添加新工作表。

你可以使用'床单'名称-值对仅适用于电子表格文件。

例子:'床单'2

例子:'床单'“MySheetName”

数据类型:char|字符串|||int8|int16|INT32.|int64|uint8|uint16|uint32|uint64

矩形部分的工作表写入,指定为逗号分隔对组成“范围”以及以下形式之一的字符向量或字符串标量。

价值的形式范围 描述
'角落1.'

角落1.指定要写入的区域的第一个单元格。写入函数在此单元格中写入数据。

例子:“范围”、“D2”

'Corner1: Corner2'

角落1.角落2.是两个对立的角落,定义了写作的地域。例如,'D2:H4'表示两个角之间的3乘5的矩形区域D2H4在工作表上。这“范围”名称-值对参数不区分大小写,使用Excel A1引用样式(请参阅Excel帮助)。

例子:“范围”、“D2: H4

  • 如果您指定的范围小于输入数据的大小,那么写入函数只写入符合该范围的输入数据的子集。

  • 如果您指定的范围大于输入数据的大小,那么写入函数将保留该区域的其余部分。

“范围”名称 - 值对只能与Excel文件一起使用。

例子:“范围”'A1:F10'

数据类型:char|字符串

旗帜开始一个实例微软®Excel对于编写电子表格数据时,对于Windows,指定为逗号分隔对组成'使用'和任何一种真正的,或

你可以设置'使用'参数设置为以下值之一:

  • 真正的—写函数在写文件时启动一个Microsoft Excel实例。

  • —写函数在写文件时不会启动Microsoft Excel实例。在这种模式下操作时,编写功能在对文件格式和交互特性(如公式和宏)的支持方面有所不同。金宝app

meftexcel.

真正的

金宝app支持的文件格式

.xls, .xlsx, .xlsm, .xltm, .xlsb, .ods

.xls,.xlsx,.xlsm,.xltx,.xltm

金宝app支持交互式功能,例如公式和宏

是的

没有

在Windows平台上写入电子表格文件时,如果要启动一个实例Microsoft Excel,然后设置'使用'参数真正的

尖端

  • 在电子表格文件中创建空表:使用电子表格文件中的空表可编程通过写一个空表。例如,创建一个名为“MySheetName”

    writetable(表(),“empty.xls”'床单'“MySheetName”
    或创建一个名为3个空纸张'sheet1''sheet2',“Sheet3”
    writetable(表(),“empty.xls”'床单'3,3)

算法

  • 如果两者都是“WriteVariableNames”'writerowanames'逻辑指标是真正的,那么可编程函数使用属性中的第一个维度名称T.Properties.DimensionNames作为输出的第一列的列标题。

  • Excel转换INF.价值观65535.MATLAB®转换NaT<定义>定值,<缺失>字符串值为空单元格。

  • Excel文件,可编程表格变量包含datetime数组作为Excel日期。如果表格包含datetime在1900年或1904年之前的数组可编程将变量写为文本。有关Excel日期的更多信息,请参阅https://金宝appsupport.microsoft.com/en-us/kb/214330

  • 有一些实例在哪里可编程函数创建一个未表示的文件T.确切地。您将在使用时注意到这一点readtable读取该文件。生成的表可能与原始表的格式或内容不同。如果您需要保存一个表,并在以后使用相同的数据和组织检索它,以便与原始表完全匹配,那么将它保存为mat文件。可编程在以下实例中写一个不精确的表:

    • 当写入文本文件时,可编程使用数字输出数字变量长g格式,以及分类或字符变量为未引用的字符。

    • 对于具有多个列的变量,可编程将唯一标识符附加到要用作列标题的变量名。

    • 对于具有多于两个维度的输出变量,可编程将这些变量输出为二维,其中后面的维被折叠。例如,可编程输出一个4 × 3 × 2的变量,就好像它的大小是4 × 6。

    • 对于具有的变量细胞数据类型,可编程在多个字段中,将每个单元格的内容作为一行输出。如果内容不是数字、逻辑、字符或分类的,则可编程输出单个空字段。

介绍了R2013b