cannot save quadrature data

1 回表示 (過去 30 日間)
NoYeah
NoYeah 2020 年 8 月 7 日
回答済み: Walter Roberson 2020 年 8 月 7 日
I have this kind of data
{1 + 2i
3 + 4i
2 + 7i
....}
I used fprintf to save the above
file_name = fopen('data.txt','w');
fprintf(file_name, '%s\r\n', data);
fclose(file_name)
I got data.txt and theronly exist the real value
like
1
3
2
....
not the
1 + 2i
3 + 4i
2 + 7i
...
How to save this data type properly?

採用された回答

Walter Roberson
Walter Roberson 2020 年 8 月 7 日
file_name ='data.txt';
fid = fopen(file_name, 'w');
fprintf(fid, '%.17e%+.17ei\r\n', [real(data.'); imag(data.')]);
fclose(fid)
I deliberately did not put a space between the real and imaginary parts: some parsing software can only detect the imaginary part as being part of the same number if there is no space. You can put a space before %+ if you want.
If you need a space after the sign for the complex part, then that would need more work.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeFunctions についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by