Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ?

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


日本マイクロソフトのOffice Clientサポートチームが、「打」で始まるテキストファイルをMicrosoft Wordで開くとコンバーターを要求するという奇妙な挙動について報告していたので、実際に試してみました。
Word で「打」で始まるテキスト ファイルを開くとコンバーターを要求される | Japan Office Client Support Blog
https://officesupportjp.github.io/blog/cm15ufuis0000f0seec0i7yev/

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


さっそく2つのテキストファイルを作りました。左のテキストファイルは、メモ帳で作った何の変哲もないファイルです。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


これをWordで開いてみます。テキスト変換ダイアログが出るので「OK」をクリックします。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


何事もなくテキストファイルを開くことができました。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


続いて、もうひとつのテキストファイルをWordで開いてみます。こちらは、「打撃」というテキストをShift-JISでエンコードしたファイルです。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


「このファイルは新しいバージョンの Microsoft Word で作成されているため、このファイルを開くにはコンバーターが必要です。Microsoft Office Web サイトからコンバータをダウンロードしますか?」と表示され、正常にファイルを開くことができませんでした。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


サポートチームによると、この現象が起きる条件は「ファイル内容の先頭がShift-JISの『打』(0x91C5)で始まること」と「2文字目以降に文字が続くこと(制御コードを含め、何らかのデータがあること)」の2つだとのこと。
「多くのファイル形式では、先頭数バイトでそのファイル形式を表します(中略)。しかし、テキストファイルではこのようなデータ部を持たないため、ユーザーがファイルに入力したテキスト情報を、ファイルの先頭バイトから格納します。『打』をShift-JISでエンコードした場合の0x91C5で始まり、3バイト目以降にデータが続くと、Wordはテキストファイルとは別のファイル形式と認識します。このWordで認識されたファイル形式は、現在サポートされるWordデスクトップアプリで開くことができない形式のため、Wordはコンバーターが必要と判断し、先述のメッセージを表示します」とサポートチームは説明しました。
この問題の回避方法は簡単で、まず前述の表示が出た際に「いいえ」をクリックします。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


テキストファイルとして開くか尋ねられるので、「OK」をクリックします。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


「OK」をクリック。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


無事開くことができました。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


また、保存時にUTF-8などShift-JIS以外の文字コードでエンコードすることでも回避できます。

Wordで「打」で始まるテキストファイルを開くとコンバーターを要求される、一体なぜ? - 画像


◆フォーラム開設中
本記事に関連するフォーラムをGIGAZINE公式Discordサーバーに設置しました。誰でも自由に書き込めるので、どしどしコメントしてください!Discordアカウントを持っていない場合は、アカウント作成手順解説記事を参考にアカウントを作成してみてください!
• Discord | "Wordで謎の不具合に遭遇したことある?" | GIGAZINE(ギガジン)
https://discord.com/channels/1037961069903216680/1285894554628657204

ジャンルで探す