文件数据导入和导出的方式有很多种,本文主要介绍一种比较万能的方法readtable和writetable。主体包含:
1.文件路径相关的关键字
2.文件的读取与写入(readtable与writetable)
3.MATLAB 中表格变量的使用。
1.文件路径相关的关键字
对于此部分不感兴趣的同学,建议文件直接与matlab运行文件保存在相同路径下,基本不用对路径进行相关设置
pwd:
MATLAB 当前文件夹路径
fullfile:
从各个部分构建完整文件名, 此 MATLAB 函数 根据指定的文件夹和文件名构建完整的文件设定。 f = fullfile(filepart1,...,filepartN)
f = fullfile(
'myfolder'
,
'mysubfolder'
,
'myfile.m'
)
f ='myfolder\mysubfolder\myfile.m'
fileparts:
获取文件名的组成部分,此MATLAB 函数 返回指定文件的路径名称、文件名和扩展名。
[filepath,name,ext] = fileparts(filename)
uigetfile
- 打开文件选择对话框,此 MATLAB 函数 打开一个模态对话框,其中列出了当前文件夹中的文件。用户可以在这里选择或输入文件的名称。如果文件存在并且有效,当用户点击打开时,uigetfile 将返回文件名。如果用户点击取消或窗口关闭按钮 (X),uigetfile 将返回 0。
file = uigetfile
file,path] = uigetfile
[file,path,indx] = uigetfile
file
-
文件名
字符向量
|
字符向量元胞数组
path
-
指定的文件的路径
字符向量
indx
-
选定的筛选器索引
整数
2.文件的读取与写入(readtable与writetable)
文件的读取与写入有很多种方法,推荐采用readtable与writetable,
因为他们适用很多种文件格式
。
想获知更详细的资料,在MATLAB 命令窗口写入 doc readtable 或 doc writetable
A.读取文件保存为表readtable
readtable 基于文件的扩展名确定文件格式:
-
.txt、.dat 或 .csv(带分隔符的文本文件)
-
.xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx 或 .ods(电子表格文件)
-
.xml(可扩展标记语言 (XML) 文件)
-
.docx(Microsoft® Word 文档文件)
-
.html、.xhtml 或 .htm(超文本标记语言 (HTML) 文件
T = readtable(filename)
T = readtable(filename,opts)
T = readtable(___,Name,Value)
B.
将表写入文件
writetable
-
writetable 根据指定扩展名确定文件格式。扩展名必须是下列格式之一:
-
.txt、.dat 或 .csv(适用于带分隔符的文本文件)
-
.xls、.xlsm 或 .xlsx(适用于 Excel® 电子表格文件)
-
.xlsb(适用于安装了 Windows® Excel 的系统上支持的 Excel 电子表格文件)
-
.xml(适用于可扩展标记语言 (XML) 文件)
writetable(T)
writetable(T,filename)
writetable(___,Name,Value)
3.MATLAB表格变量的使用
%
读取文件
t=readtable(
"test7.xlsx"
)
%
读取元素表
a=t(1,2)
class(a)
%
读取行表
b=t(1,:)
class(b)
%
读取列表
c=t(:,
"x"
) %"x"为该行的变量名
class(c)
d=t(:,1)
class(d)
%
读取元素
e=t{1,2}
class(e)
%
添加行
xx=[{15} {2.5}]
%
构造行
t=[t;xx]
%
在后面写入行
%
保存表格
writetable(t,
"test7.xlsx"
)
%
第
14
行写入空字符(相当于删除)
t(14,:)=[]
test7.xlsx
内容如下:
|
x
|
y
|
1
|
1
|
1.1000
|
2
|
2
|
1.2000
|
3
|
3
|
1.3000
|
4
|
4
|
1.4000
|
5
|
5
|
1.5000
|
6
|
6
|
1.6000
|
7
|
7
|
1.7000
|
8
|
8
|
1.8000
|
9
|
9
|
1.9000
|
10
|
10
|
2
|
11
|
11
|
2.1000
|
12
|
12
|
2.2000
|
13
|
13
|
2.3000
|
14
|
14
|
2.4000
|
文件数据导入和导出的方式有很多种,本文主要介绍一种比较万能的方法readtable和writetable。主体包含:1.文件路径相关的关键字2.文件的读取与写入(readtable与writetable)3.MATLAB 中表格变量的使用。
文档说明:
Shape
文件
读取
matlab
自带的shaperead
文件
不支持
读取
图形类型为“PolygonZ”的
文件
,因此在
matlab
原有的基础上进行改造,得到可以
读取
该类型的代码。
Read_Shape_Main.m 主程序
myshaperead.m (主程序)调用函数,
读取
Shape
文件
myopenShapeFiles.m (myshaperead)调用函数,打开.shp、.shx、.dbf
文件
,获取相应
文件
打开的ID号和图形类型编号
mygetShapeTypeInfo.m 调用函数,获取不同图形类型有关信息,具体包括:图形类型和zuobiao
mydbfinfo.m 调用函数,阅读 DBF
文件
的标题信息,各类结构信息,具体包括:Filename、DBFVersion、FileModDate、NumRecords、NumFields、FieldInfo、HeaderLength、RecordLength
利用
matlab
导入或
读取数据
至Excel(COM方法和xlswrite、xlsread方法)1
Matlab
自带函数1.1
写入
Excel1.2
读取
Excel1.3示例2 COM方法2.1
文件
的
读取
与
写入
2.1.1 应用1:利用Excel画画2.2 纯
数据
的快速
写入
编辑
太长不看版结论:xlswrite、xlsread方法简单,实现功能简单。COM方法复杂,实现功能复杂。
### 回答1:
可以
使用
Matlab
函数fopen和fwrite来打开txt
文件
并在
文件
末尾
写入
数据
。例如:fileID = fopen('myFile.txt','a');fwrite(fileID,data);fclose(fileID);
### 回答2:
在
MATLAB
中,可以
使用
fopen函数来打开txt
文件
并在
文件
末尾
写入
数据
。
首先,需要创建一个
文件
标识符来引用打开的
文件
。可以
使用
以下语法来打开一个txt
文件
:
fileID = fopen('filename.txt','a');
其中,'filename.txt'为你要打开的txt
文件
的名称,'a'表示以追加模式
打开文件
,这意味着新的
数据
将被
写入
到
文件
的末尾。
接下来,可以
使用
fprintf函数来将
数据
写入
文件
。该函数的语法如下:
fprintf(fileID, format, A);
其中,fileID是上一步中打开的
文件
标识符,format为
写入
数据
的格式字符串,A是要
写入
的
数据
。
当完成
数据
写入
后,记得
使用
fclose函数关闭
文件
。语法如下:
fclose(fileID);
以下是一个示例代码,展示了如何
使用
fopen函数打开txt
文件
并在
文件
末尾
写入
数据
:
%
打开文件
fileID = fopen('data.txt','a');
%
写入
数据
data = 123.45;
fprintf(fileID, '
数据
: %.2f\n', data);
% 关闭
文件
fclose(fileID);
请注意,在将
数据
写入
文件
之前,可以根据需要
使用
fprintf函数设置
数据
格式。在该示例中,
使用
'%.2f'来指定
数据
的小数点后两位。
最后,
写入
的
数据
将以一个新行的形式添加到
文件
的末尾,可以根据需求修改
数据
格式和
写入
方式。
### 回答3:
在
MATLAB
中,可以
使用
fopen函数打开txt
文件
,并在
文件
末尾
写入
数据
。具体步骤如下:
首先,需要指定要打开的txt
文件
的
文件
名和访问模式。访问模式包括
读取
、
写入
、追加等不同的选项。在这里,我们需要
使用
追加模式来在
文件
末尾添加
数据
。因此,可以
使用
以下代码打开txt
文件
:
fileID = fopen('filename.txt','a');
其中,'filename.txt'是要打开的txt
文件
的名字,'a'表示追加模式。
然后,可以
使用
fprintf函数向txt
文件
写入
数据
。例如,如果要将字符串"data"
写入
txt
文件
,可以
使用
以下代码:
fprintf(fileID,'data');
注意,上述代码中的fileID是fopen函数返回的
文件
标识符,代表已打开的txt
文件
。
最后,需要
使用
fclose函数关闭已打开的txt
文件
,以确保
文件
在
写入
数据
后被正常关闭。以下代码将实现关闭txt
文件
的操作:
fclose(fileID);
通过以上步骤,我们就可以
使用
fopen函数打开txt
文件
,并在
文件
末尾
写入
数据
。