数値と文字列をASC​IIファイルとして保​存するにはどのように​すればよいですか?

조회 수: 21 (최근 30일)
MathWorks Support Team
MathWorks Support Team 2009년 10월 2일
数値と文字列をASCIIファイルとして保存するにはどのようにすればよいですか?

채택된 답변

MathWorks Support Team
MathWorks Support Team 2013년 10월 25일
Excel スプレッドシート(.xls)形式で保存する場合にはxlswrite関数、その他のASCIIファイル形式で保存する場合はfprintf関数を使用します。
それぞれの場合について、下記にて説明とプログラム例を紹介します。
1. Excel スプレッドシート(.xls)形式で保存する場合
xlswrite 関数を使用します。
数値と文字列が別々の変数に定義されている場合は、事前に一つのセル配列の変数になるようにデータを結合させる必要があります。
下記に、プログラム例を示します。
x = [0,1,0;1,2,4;2,3,5]; % 数値
x_c = num2cell(x); % 数値を各要素に含むセル配列に変換
str = {'time','signal1','signal2'}; % 文字列(セル配列)
data = [str;x_c]; % 文字列と数値を一つの変数として結合
% Excel スプレッドシート形式で保存する場合
xlswrite('mydata.xls',data) % ファイル名を指定して保存
※CSV形式で保存したい場合は、上記手順で作成したファイルを Excel で開き、CSV形式で保存し直すことも可能です。
2. その他の ASCII ファイル形式で保存する場合
低水準ファイルI/O 関数の fprintf を使用します。
例:カンマ区切りの .txt ファイルで出力する例
num = [0,1,0;1,2,4;2,3,5]; % 数値
str = {'time','signal1','signal2'}; % 文字列(セル配列)
fid = fopen('mydata2.txt','wt'); % 書き込み用にファイルオープン
fprintf(fid,'%s,%s,%s\n',str{:}) % 文字列の書き出し
fprintf(fid,'%f,%f,%f\n',num) % 数値の書き出し
fclose(fid) % ファイルクローズ

추가 답변 (0개)

Community Treasure Hunt

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

Start Hunting!