Exporting a matrix tab separated

Hi, my name is Nahuel and I had a lot of troubles trying to export a 3 column matrix in a txt ASCII tab separated file with that form
500.000000 500.000000 5.000000
500.000000 500.000000 5.000000
500.000000 500.000000 5.000000
500.000000 500.000000 5.000000
It means tab column tab column tab... with 6 decimal numbers. I have tried with save and dlmwrite but the matlab hate's me :(

Réponses (2)

Walter Roberson
Walter Roberson le 15 Juil 2012

0 votes

Try dlmwrite() of your matrix, with delimiter set to '' (the empty string), and precision set to '\t%.6f'. I cannot promise that it will allow the precision to start with a tab.
If you did not need the leading tab, you would be more secure with delimiter set to '\t' and precision set to '%.6f'

2 commentaires

Nahuel
Nahuel le 15 Juil 2012
you say something like dlmwrite('myfile.txt', M, 'delimiter', '', 'precision', '\t%.6f')?? I need the leading tab
Walter Roberson
Walter Roberson le 16 Juil 2012
Yes, try that dlmwrite()

Connectez-vous pour commenter.

Jan
Jan le 16 Juil 2012

0 votes

Or directly without DLMWRITE:
X = rand(4, 3);
Fmt = [repmat('%.6f\t', 1, size(X, 2)), '\n'];
fid = fopen(FileName);
if fid == -1, error('Cannot open file'); end
fprintf(fid, Fmt, transpose(X));
fclose(fid);

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Question posée :

le 15 Juil 2012

Community Treasure Hunt

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

Start Hunting!

Translated by