Write and Merge some set of text files into one text file

2 visualizzazioni (ultimi 30 giorni)
I want to write some separate text files into on text file with right format. for example my text files are (here '/\' indicate separation of files):
0 1 /\ 0 2 /\ 0 3
0 1 /\ 0 2 /\ 0 3
0 1 /\ 0 2 /\ 0 3
and write these three files into one as:
0 1 2 3
0 1 2 3
0 1 2 3
I tries this piece of code but it didn't work well:
for i=1:3
A=load([num2str(i),'.txt']);
add='mixfiles.txt';
fileID=fopen(add,'a+');
fprintf(fileID,'%6.8f %6.8f %6.8f %6.8f\r\n',A);
fclose(fileID);
end

Risposta accettata

Walter Roberson
Walter Roberson il 1 Giu 2013
fprintf(fileID,'%6.8f %6.8f %6.8f %6.8f\r\n', A.' ); %notice transpose
  2 Commenti
Arman Kam
Arman Kam il 1 Giu 2013
Modificato: Arman Kam il 1 Giu 2013
Dear Walter, when I change it to transpose, no difference is observed!
With both commands what i get is
1.00000000 1.00000000 1.00000000 2.00000000 2.00000000 2.00000000 3.00000000 3.00000000 3.00000000
Walter Roberson
Walter Roberson il 1 Giu 2013
Is it the case that each file contains 3 lines of data values, 2 columns per line? And you want to horizontally concatenate across the files? If so then you need to read all of the values and concatenate them before you output everything, instead of outputting after each file.
Unless, that is, your aim is to read each file and output it as a single line each, and then afterwards to read back the resulting file with all data and re-arrange the massed data to be in the desired format ?

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by