MATLAB Answers

CSVファイルの出力結果について

43 views (last 30 days)
O.E
O.E on 6 Feb 2018
Commented: O.E on 6 Feb 2018
MATLABでの演算結果をCSVファイルに書き込みたいと考えて、プログラムを作成いたしました。
実行したところEXCELでは思ったような表示のされ方がされているのですが、メモ帳で同じファイルを開くと
全く違う表示のされ方になってしまいました。 何が原因なのでしょうか。またどちらの表示が正しいのでしょうか。
EXCELで表示
1 -1
2 -1
3 1
4 1
5 1
6 1
7 1
8 1 …
メモ帳で表示
1,-12,-13,14,15,16,17,18,19,110…
出力部分のCode
OUT1 = reshape(repmat(A,[1,n]),[Tsim,1]);
OUT = [OUT1 OUT2];
csvwrite('output.csv',OUT)

Accepted Answer

Akira Agata
Akira Agata on 6 Feb 2018
csvwrite 関数では、各行を改行文字で終了し、キャリッジリターンは付加しません。一方、Windowsのメモ帳は改行文字+キャリッジリターンを改行箇所と認識します。このため、 csvwrite 関数で保存したファイルをメモ帳で開くと、改行されずに表示されてしまいます(つまり、Excelもメモ帳も、どちらの表示も正しい)。
もしExcelでもメモ帳でも改行して表示したい場合は、キャリッジリターンを付加した形で保存して下さい。例えば以下のように dlmwrite コマンドで newline オプションを指定すると、キャリッジリターンを付加した形で保存することができます。
dlmwrite('output.csv',OUT,'newline','pc');
  1 Comment
O.E
O.E on 6 Feb 2018
解決いたしました。ありがとうございます。

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!