matlab如何将多个.txt文件合并成一个并按指定格式输出
时间: 2024-03-05 15:48:09 浏览: 123
您可以使用MATLAB中的文件操作函数和格式化输出来实现此功能。以下是一个基本的代码示例,它将读取多个.txt文件并将它们合并成一个新文件,然后按照指定的格式输出。
```matlab
% 设置输出文件名和格式
output_file = 'merged.txt';
format_str = '%f\t%f\n'; % 以tab分隔符分离两个数字
% 打开输出文件并写入表头
fid_out = fopen(output_file, 'w');
fprintf(fid_out, 'col1\tcol2\n'); % 表头
% 遍历所有txt文件
txt_files = dir('*.txt');
for i = 1:length(txt_files)
% 打开txt文件并读取数据
file_name = txt_files(i).name;
fid_in = fopen(file_name, 'r');
data = textscan(fid_in, '%f%f', 'Delimiter', '\t');
% 关闭输入文件
fclose(fid_in);
% 将数据写入输出文件
fprintf(fid_out, format_str, data{1}, data{2});
end
% 关闭输出文件
fclose(fid_out);
```
在上述代码中,我们首先设置了输出文件名和格式,然后打开输出文件并写入表头。接下来,我们使用`dir`函数获取当前目录下所有的.txt文件,并对每个文件进行遍历。在每个文件中,我们打开txt文件并使用`textscan`函数读取数据。最后,我们将数据写入输出文件中,并在最后关闭输出文件。
请注意,上述代码仅适用于每个txt文件包含两个数字的情况。如果您的txt文件具有不同的格式,请相应地更改格式化字符串。
阅读全文