MATLAB txt文件抽稀并分为多个txt文件

发布时间 2023-09-15 23:25:58作者: 懵逼的程序小白

chouxi.m

a = load("file.txt");
% len = length(a);
interval = 9;%间隔+1

b = a(1:interval:end,:);
dlmwrite('chouxiRes1.txt',b,'delimiter',' ','precision',8,'-append')

fenge.m

a = load("file1.txt");
len = length(a);
interval = 100000;   % 每个文件中的行个数
for i = 1 : floor(len/interval)+1   %生成文件的个数
    if(interval*i > len)
        b=a(1+interval*(i - 1):len,:);
        fileName = sprintf('fileChouxi%d.txt',i);
        dlmwrite(fileName,b,'delimiter',' ','precision',8)
    else
        b=a(1+interval*(i - 1):interval*i,:);
        fileName = sprintf('fileChouxi%d.txt',i);
        dlmwrite(fileName,b,'delimiter',' ','precision',8)    
    end 
end

抽稀和分隔都是按行进行分隔的,在进行分隔时,如果剩余的行数不足设定的每个文件行数,多余的这些行单独成一个文件,生成的文件将以fileChouxi1...i的形式命名
保存出来的文件都是以空格为间隔隔开,若想以逗号隔开,在dlmwrite里面做更改即可