異なるOS 間でファイルを共有した場合に、MATLAB エディタで日本語が文字化けするのはなぜですか?
59 ビュー (過去 30 日間)
古いコメントを表示
MathWorks Support Team
2019 年 1 月 10 日
編集済み: MathWorks Support Team
2022 年 11 月 14 日
Windows 環境で、日本語を含む MATLAB スクリプト/関数を作成した後、Linux や Mac 環境にインストールされた MATLAB でファイルを開くと、日本語が文字化けしています。
採用された回答
MathWorks Support Team
2022 年 11 月 14 日
編集済み: MathWorks Support Team
2022 年 11 月 14 日
R2020a 以降の MATLAB エディタでは、デフォルトでは UTF-8 を使用して保存します。これにより、OS 間での文字化けを防ぐことが可能です。
詳細については、以下の URL のドキュメントをご覧ください。
・ファイルのエンコード
https://jp.mathworks.com/help/matlab/matlab_prog/save-and-back-up-code_ja_JP.html#mw_c5170e87-a750-45ce-92d0-7de54c78c0ec
R2019b 以前のリリースをご利用の場合には、以下の情報を参照してください。
各OS にて、文字コードが異なるために発生します。
残念ながら、MATLAB から別の OS で文字コードを統一、またはエディタの文字コードを設定する機能は提供されていません。
なお、R2016b 以降で提供されているライブスクリプト(Live editor) では、ロケール間での相互利用が可能です。詳細につきましては、下記 URL をご覧ください。
・ライブ スクリプトまたはライブ関数とは
回避策としては、コマンドウィンドウから各ファイルに関して文字コード変換を行う方法があります。
・OS が Linux や Macintosh の場合
terminal で nkf や iconv コマンドを使用して文字コード変換を行うことができます。nkf のインストール方法に関しましては、以下のウェブサイトをご覧ください。
- nkf インストールについて
・OS が Windows の場合
emacs などのテキストエディタ、あるいは Windows 上でコマンドを使用できる Cygwin などをインストールし、上記の nkf コマンドでファイルの文字コード変換を行うことができます。
cygwin と emacs は以下のウェブサイトからダウンロードすることが出来ます。
・cygwin
・emacs
例えば Terminal 上で test.csv というファイルの文字コードを SHIFT-JIS から UTF-8 に変換したい場合、
$ nkf -w test.csv > test_utf8.csv
となります。ここで -w は出力が UTF-8 であるというオプションです。
文字コードを確認するには、
$ nkf -g test.csv
$ nkf -g test_utf8.csv
を実行します。
また、emacs 上で変換したい場合、ファイルを開き、
Ctrl-x RET f utf-8
と実行します。ここで RET は改行キーになります。
0 件のコメント
その他の回答 (0 件)
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!