datファイルを読み込んでも文字化けが生じる

204 visualizzazioni (ultimi 30 giorni)
翔
il 21 Giu 2024
どのようなデータが何バイト以内で入っているのかが分かっているdatファイルがあります。
そのファイルをreadtableで読み込むと文字化けが生じてしましました。
datファイルを読み込むにおいて最適な方法とこの文字化けをなくす方法があれば教えていただけますでしょうか。

Risposte (1)

交感神経優位なあかべぇ
.datファイルにどのような形式のデータが入っているか分かりませんので.datの最適な読み込み方法は場合によります。
もしreadtableで読み取れるなら、文字エンコードをShift-JISで読み取るなど、エンコードタイプを指定すれば、文字化けを回避できるかもしれません。
% Shift-JISでサンプルファイル作成
sample = table(["テスト"; "Test"; "日本語"],'VariableNames', ["項目名"]);
writetable(sample,'sample.dat',"Encoding","Shift-JIS");
% Shift-JISでファイル読み取り
htable = readtable('sample.dat', 'Encoding', 'Shift-JIS', 'VariableNamingRule', 'preserve')
htable = 3x1 table
項目名 _________ {'テスト'} {'Test' } {'日本語'}
% 既定の設定でファイル読み取り
htable = readtable('sample.dat', 'VariableNamingRule', 'preserve')
htable = 3x1 table
□□□Ú□¼ ________ {'□e□X□g' } {'Test'} {'□ú□{□ê' }
  2 Commenti
翔
il 24 Giu 2024
Spostato: Kojiro Saito il 25 Giu 2024
早速のご対応ありがとうございます。
MATLABに対応しているエンコードタイプ全てを用いてエンコード変更をしたのですが、
文字化けが生じていしまう状況です。
この場合、読み取り方法以前にファイル側で何かしらの細工がされている可能性があるのでしょうか。
交感神経優位なあかべぇ
Modificato: 交感神経優位なあかべぇ il 25 Giu 2024
その.datファイルはメモ帳などのテキストエディターで文字化けせずに開けるファイルでしょうか?
もし文字化けするようなファイルでしたらそれはreadtableの類で開けるファイルではなくなんらかのバイナリファイルだと予想します。
バイナリファイルの場合は、
fileID = fopen('〇〇.dat');
A = fread(fileID);
fclose(fileID);
で開くことは可能ですが、読み取ったデータを意味のあるデータに変換するには、そのファイルのデータ構造を十分理解していないといけないため、なかなか難しいのではと思います。

Accedi per commentare.

Categorie

Scopri di più su ビッグ データの処理 in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!