Borrar filtros
Borrar filtros

How to write a matrix into a txt file so that all variables in a columns have exactly the same starting character and length?

1 visualización (últimos 30 días)
I am trying to export a matrix into a text file. The text file will later be feed into another program that requires all variables in a specific columns have the same starting location, and the same length.
How should I achieve this? Which Matlab function should I use to export the data?
Thank you.

Respuesta aceptada

Fangjun Jiang
Fangjun Jiang el 21 de Abr. de 2011
use sprintf formating, such as
a=rand(5,1);
sprintf('%20.2f\n',a(:));
doc sprintf
It also applies to fprintf.
  2 comentarios
Liqing
Liqing el 21 de Abr. de 2011
Thank you very much for the suggestion. So for sprintf I will have to write one row at one time?
Walter Roberson
Walter Roberson el 21 de Abr. de 2011
No, sprintf() and fprintf() will repeat the format as often as needed to write out all the data.

Iniciar sesión para comentar.

Más respuestas (2)

Liqing
Liqing el 21 de Abr. de 2011
Now it is working. Thank you very much.
Another question. Now the deliminator is space, so that length of each row is very different. For example, in a column, '45' will have different length as '-45", '26.7', will have different length as '126.8'.
How could I fix this?

Fangjun Jiang
Fangjun Jiang el 25 de Abr. de 2011
What do you mean? What exact format do you want to achieve? Please read through the document of sprintf formatting. I think it should be able to cover most if not all format.
Is this what you need?
sprintf('%010.2f\n',45,-45,26.7,126.8)

Categorías

Más información sobre Text Data Preparation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by