異なるOS 間でファイルを共有した場合に、MATLAB エディタで日本語が文字化けするのはなぜですか?

59 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2019 年 1 月 10 日
編集済み: MathWorks Support Team 2022 年 11 月 14 日
Windows 環境で、日本語を含む MATLAB スクリプト/関数を作成した後、Linux や Mac 環境にインストールされた MATLAB でファイルを開くと、日本語が文字化けしています。

採用された回答

MathWorks Support Team
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 件)

カテゴリ

Help Center および File Exchangeスクリプト についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!