如何使用 MATLAB 编辑文本文件?
How to edit a text file using MATLAB?
我有一个格式如下的文本文件:
"1981-02-01",15.3
"1981-02-02",18.8
"1981-02-03",21.9
"1981-02-04",19.9
我想编辑这两行,使其如下所示:
1 15.3
2 18.8
3 21.9
4 19.9
我正在寻找一个 MATLAB 函数,它可以自动执行此操作而无需手动更改我的文件,因为原始文件包含 500 行。
谢谢
正如上面的评论所暗示的那样,MATLAB 中没有内置这样的函数。自己写 function/script 是最好的选择。下面是一个脚本,它读取文本文件的第二列并创建名为 Column_1
的文本文件的第一列。然后使用 fprintf()
函数将 Data
写入文本文件。
File_Name = "Text.txt";
Format_File(File_Name);
%Function definition%
function [] = Format_File(File_Name)
T = readtable(File_Name);
Column_1 = 1:height(T);
Column_2 = ((T{:,2}));
Data(1,:) = Column_1;
Data(2,:) = Column_2;
fileID = fopen('Text.txt','w');
fprintf(fileID,'%d %.1f\n',Data);
fclose(fileID);
end
输入:Text.txt
"1981-02-01",15.3
"1981-02-02",18.8
"1981-02-03",21.9
"1981-02-04",19.9
输出:Text.txt
1 15.3
2 18.8
3 21.9
4 19.9
运行 使用 MATLAB R2019b
我有一个格式如下的文本文件:
"1981-02-01",15.3
"1981-02-02",18.8
"1981-02-03",21.9
"1981-02-04",19.9
我想编辑这两行,使其如下所示:
1 15.3
2 18.8
3 21.9
4 19.9
我正在寻找一个 MATLAB 函数,它可以自动执行此操作而无需手动更改我的文件,因为原始文件包含 500 行。 谢谢
正如上面的评论所暗示的那样,MATLAB 中没有内置这样的函数。自己写 function/script 是最好的选择。下面是一个脚本,它读取文本文件的第二列并创建名为 Column_1
的文本文件的第一列。然后使用 fprintf()
函数将 Data
写入文本文件。
File_Name = "Text.txt";
Format_File(File_Name);
%Function definition%
function [] = Format_File(File_Name)
T = readtable(File_Name);
Column_1 = 1:height(T);
Column_2 = ((T{:,2}));
Data(1,:) = Column_1;
Data(2,:) = Column_2;
fileID = fopen('Text.txt','w');
fprintf(fileID,'%d %.1f\n',Data);
fclose(fileID);
end
输入:Text.txt
"1981-02-01",15.3
"1981-02-02",18.8
"1981-02-03",21.9
"1981-02-04",19.9
输出:Text.txt
1 15.3
2 18.8
3 21.9
4 19.9
运行 使用 MATLAB R2019b