• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:onedriveで編集したテキストが文字化けします)

onedriveで編集したテキストが文字化けする原因と対策方法

このQ&Aのポイント
  • onedriveにあるテキストファイルをandroidとwindows10で同期して使っていると、androidのQuickEditアプリで編集すると文字化けする問題が発生します。
  • 文字化けしないテキストファイルをwindowsのメモ帳で開いて保存すると、文字化けしているテキストファイルとは異なる保存形式が適用されます。このため、問題の原因はUTF-8で保存されたファイルをwindowsのメモ帳がANSIとして読み込んでいることが考えられます。
  • 別のテキストエディタアプリを試してみましたが、onedriveのファイルの読み込み書き込みには対応していないものばかりでした。このため、他の対策方法を模索する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • tmys10
  • ベストアンサー率36% (338/930)
回答No.1

テキストファイルには文字コードを示すメタデータが含まれていません。そこでメモ帳は既存ファイルの内容を読んで文字コードを判断します。ところが8bit文字(いわゆる半角英数字)はUTF-8もANSIも同じなので判断できず、既定であるANSI (Shift-JIS)を採用するのだと思います。 Androidではなく、Windowsからメモ帳で開くときは、コマンドラインからスイッチを付けて notepad.exe /w ファイル.txt のようにすればいかがでしょう。面倒でしたらショートカットを作ってオプションを書き込むとドラッグ&ドロップで起動できます。 次のWindows 10 2004のメモ帳は、デフォルトがUTFになるようですね。

osiete_okwave
質問者

お礼

詳しく丁寧にありがとうございます! メモ帳からだと文字コードを正しく判断できないのですね。 ショートカットの方法も教えてくださりありがとうございます。 ただ試してみたのですが私の環境だと/wのスイッチ、UTF-16として読み込んでしまうようで、 UTF-8は文字化けしてしまいました。 なかなか思うようにいきませんが教えていただいた情報を元にもうちょっと調べてみます。 どうもありがとうございました!

その他の回答 (1)

  • tmys10
  • ベストアンサー率36% (338/930)
回答No.2

たしかに/wはUTF-16ですが、QuickEditはそれにも対応していなかったでしょうか。 より簡単な解決策は、 ・メモ帳のステータスバーにANSIと表示されたときは、保存するときに「名前をつけて保存...」を選び、文字コードにUTF-8を指定する ・あるいはQuickEditで保存するときは必ず2バイト文字を含めて書き込むこと です。

osiete_okwave
質問者

お礼

なるほど、どちらもUTF-16にするって方法がありましたね! その他の解決法もありがとうございました!

関連するQ&A