Tableデータ名に日本語が含まれている場合の処理
63 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Yuya Iwasaki
el 1 de Oct. de 2020
いつも大変お世話になっております。
エクセルで編集されたデータ名に日本語が含まれており、それをそのままテーブルに取り込むと、日本語の部分が文字化けしてしまいます。
下記リンクを参照にコーディングしましたが、文字化けしてしまいます。
解決策などはありますでしょうか。
よろしくお願いいたします。
2 comentarios
stozaki
el 2 de Oct. de 2020
Yuya Iwasaki 様
お世話になっております。
読み込まれたエクセルファイル (対象文字列を含む箇所だけでも可) の添付と、読み込みに使用した関数と引数設定を教えて頂くことは可能でしょうか?
stozaki
Respuesta aceptada
stozaki
el 2 de Oct. de 2020
Editada: stozaki
el 2 de Oct. de 2020
Yuya Iwasaki様
データの添付及び、コマンド例を記載頂きましてありがとうございます。
ご利用頂いているMATLABバージョンがR2017aとのことで、行名に日本語等のマルチバイト文字取得の対応が出来ないようです。R2019b以降ですと、以下のオプション引数をつけることで読み込みができます。
TD2 = readtable('sample.csv','PreserveVariableNames',true)
R2017bの場合、出力が 'String' 型ではありますが、以下のコマンドで取得が可能かと思います。
% 変数初期化
filename = 'sample.csv';
delimiter = ',';
formatSpec = '%s%s%s%s%s%[^\n\r]';
% テキスト ファイルを開きます。
fileID = fopen(filename,'r');
% データの列を書式設定に従って読み取ります。
dataArray = textscan(fileID, formatSpec, 'Delimiter', delimiter, 'TextType', 'string', 'ReturnOnError', false);
% テキスト ファイルを閉じます。
fclose(fileID);
% TD2 に出力
TD2 = [dataArray{1:end-1}];
% 一時変数のクリア
clearvars filename delimiter formatSpec fileID dataArray ans;
ご検討頂けますでしょうか。
stozaki
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Language Support en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!