実はOS世代で変更されていたWindowsメモ帳アプリの文字コード

旧世代のWindowsメモ帳では文字コードが違う

Windowsのメモ帳は、OSの世代によって既定の文字コード運用が変わってきました。その結果、古いテキストを編集後に文字コードが変わり、うっかり上書きして救出データを壊すトラブルが起きやすくなっています。

ここでは文字コード変更の経過や編集の際の注意点などを解説しています。

OSの世代で何が変わったのか:メモ帳の仕様変更の概要

メモ帳は長い間、国内環境ではShift-JIS(いわゆるANSI系)を前提とした運用が中心でした。古いメモ帳で作られたメモ、ログ、設定ファイル、CSVの一部は、その仕様のまま残っています。

救出したテキストが昔のパソコンで作ったままの形式だった場合、データ形式によっては、今使用しているパソコンではそのまま読み出せないことがあります。

一方で、近年のOS世代ではUTF-8を扱う場面が増え、メモ帳もUTF-8を自然に使える方向へ置き換わっています。

保存時の既定、あるいは開いたときの判定のされ方が、従来の感覚のままだと食い違いやすく、同じファイルでも「環境によって見え方が変わる」状態が起こります。

この変化が厄介なのは、メモ帳は「いま自分がどの文字コードで開いているか」を意識しないまま編集できてしまう点です。

救出データの扱いでは、編集の巧拙よりも原本を守れているかが重要になります。文字コードの世代差は、まさに原本を壊す原因になり得ます。

ですので、メモ帳を使う場面でも、最初に「これはShift-JISの資産か、UTF-8の資産か」という前提を置いてから作業に入るのが安全です。

文字化けを見たら上書き禁止の鉄則

文字化けを見た瞬間にやってはいけないことが一つあります。そのまま上書き保存しないことです。

文字化けは表示だけの問題に見えますが、保存してしまうと内容が別のバイト列として書き換わり、元の情報が戻せなくなる可能性があります。

とくに救出データ(フロッピー、MO、旧HDDなどから取り出したテキスト)では、原本を守れなければ後戻りができません。

そういった点から作業の出発点は常にコピーです。開く前に、まず複製を作り「編集はコピーだけ」「原本は保護して触らない」を徹底するべきです。

危険なWin11メモ帳での上書き

アプデで改善済みとされる挙動だが一部特殊な操作では再現することもあるので注意が必要

上のイラスト画像は、OSの進化と取り扱い文字コードの違いで実際に起こりえる問題を具体的に示したものです。

救出した古いtxtデータをそのままWindows11のメモ帳で使うだけなら支障はありませんが、さらに外部の機器に持ち出したときWindows11が自動的に変換してしまったUTF-8の文字コードを認識できないことがあります。

メモ
この挙動は、既にWindowsのアップデートにより自動変換しないよう改善されているようですが、古いファイルを扱う際には既定の文字コードが違うことを前提に作業を進めるべきでしょう。

もし文字コードが変わってしまった場合、工場などのCNC機器やラベルプリンターなど、数10年単位で長く稼働している機器ほど問題を起こしてしまう可能性があります。

これは拡張子がtxtのファイル以外でも、Win11のメモ帳で保存した場合には文字コードはUTF-8になると警戒しておくべきです。

現行OSと同じUTF-8へ変換して読む方法

単純な日本語テキスト文であればUTF-8へ変換して読む手順はわりと簡単です。「元の文字コードで正しく読める状態を作り、その内容をUTF-8として保存し直す」だけです。

現行のメモ帳はShift-JISを素直に読めるので、通常のテキストファイル運用に限ればなにも問題はないように見えます。

ただし、これに頼り切ってしまうと、もとのテキストデータを別なアプリケーションのデータとして共有していた場合に厄介なことになる危険性があるので充分注意しなければなりません。

難しいのは、最初の元の文字コードの推定で、ここを誤ると読み出せても正しいデータとして再現できません。

実務よりの進め方としては、まずコピーを用意し疑わしい文字コードの候補で開き直して、もっとも自然に読める状態を探すことです。

古い国内データではShift-JISが候補になりやすいですが、データの出所(古いワープロ、古い表計算、機器のログ、海外製アプリ)によっては別の可能性もあります。

いずれにせよ、原本ではなくコピーで試すというルールを崩すことがないよう慎重に作業にあたることが大事です。

正しく読める状態が作れたら、そのコピーをUTF-8など目的の文字コードとして「別名で保存」します。

救出データの整理としては、原本(変換しない保管)・作業用(元コードで読める状態)・UTF-8版(現行OS向け)の3点セットにしておくと後で迷いを減らせます。

さらに、ファイル名の命名規則や日付を添えると検索性も含めた利便性が上がります。たとえば「テキスト260224-utf8.txt」のように、作業日と変換結果が分かる形に揃えるだけでも、その後はファイルを開くことなく内容が判断できて便利です。

このように、OSの進化に合わせメモ帳アプリも機能が増え使いやすくなっていますが、扱う文字コードが昔と変わっている点は心得ておく必要があるでしょう。