How to Split a Text File into Many Text Files ?

5 次查看(过去 30 天)
I have a text file which contains many Paragraphs.
Each Paragraph starts with a "greater than" ( > ) symbol.
I would like to split each paragraph into new text file using MATLAB.
Is it possible ?

采纳的回答

Jan
Jan 2013-4-15
Does the ">" appear as first character in a line or anywhere? Assuming the first:
Str = fileread(FileName);
CStr = regexp(Str, '\n', 'split');
Index = [find(strncmp(CStr, '>', 1)), length(CStr) + 1];
for iP = 1:length(Index - 1);
FID = fopen(sprintf('Paragraph%2d.txt', iP), 'w');
if FID == - 1, error('Cannot open file for writing'); end
fprintf('%s\n', CStr{Index(iP):Index(iP + 1) - 1});
fclose(FID);
end

更多回答(1 个)

Sheldon Ho
Sheldon Ho 2019-6-12
The line: fprintf('%s\n', CStr{Index(iP):Index(iP + 1) - 1});
should be: fprintf(FID,'%s\n', CStr{1,Index(iP):Index(iP + 1) - 1});

类别

Help CenterFile Exchange 中查找有关 Workspace Variables and MAT-Files 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by