Windowsのシステムロケール「日本語(日本)」はやっぱり特殊?:その知識、ホントに正しい? Windowsにまつわる都市伝説(203)
本連載第189回では、日本語環境が生み出した「Windows Admin Center」のバグの謎について解説しました。今回も日本語環境が関係する謎を見つけたので紹介します。原因は謎のまま、日本語環境では回避できません(というか、MS-DOSや16bitアプリ向けの互換機能なので、実は何の悪影響もありません)。
「©」はUnicodeなのにUnicodeではない?
- [参考]真夏の怪異、ログオン中のユーザーが1人少ない! それは「Shift-JIS」の呪い?(本連載 第189回)
WindowsのNTFSファイルシステムは、MS-DOSや16bitアプリケーション向けに、「8.3(8dot3)」形式の短いファイル名を自動生成する互換機能を提供しています。とある、有名なWindowsの専門書籍(英語)には、その生成方法が説明されています。
例えば、スペース(空白)やUnicode文字など、MS-DOSで使えない文字、前後のピリオド、最後のピリオドを除く埋め込まれたピリオドを削除するなどです(この後に3つの手順が続きます)。
書籍に例示されているファイル名で実際にファイルを作成し、「DIR /X」コマンドで8.3形式の短いファイル名を確認してみたところ、3つの例外を除いて、書いてある通りに自動生成されました。
3つの例外とは、Unicode文字を含む場合です(表1)。書籍には短いファイル名が自動生成されると書いてあるのですが、「©」は短いファイル名が自動生成されず、他の2つはUnicode文字が削除されず、一部がそのまま残ってしまいました(画面1)。
ファイル名 | 短いファイル名 |
---|---|
© | 6E2D~1 |
UnicodeName.φΔЛɅ | UNICOD~1 |
25¢.two characters | 255440~1.TWO |
表1 8.3形式の短いファイル名が自動生成されない例外 |
短いファイル名を生成しなかった「©」を含む、書籍で例示されていたUnicode文字は、日本語版WindowsではUnicode文字としては認識されず、通常の文字(MS-DOSで使える文字、実際に使えるかどうかではありません)としてそのまま受け入れているように見えます。ただし、全てのUnicode文字で同様の問題が発生するというわけではなく、「™」や「℗」はUnicode文字として認識され、期待通りの短いファイル名を自動生成しました(画面2)。
これはどういうことでしょうか? この書籍は第7版まで出ている歴史の長い書籍であり、8.3形式の自動生成については、かなり古い版から存在する内容のようです。
Windowsの新しいバージョンで仕様が変わったのか、それとも、そもそも記述に誤りがあったのかとしばらく悩みましたが、Azure仮想マシンの英語環境で同様の実験をしてみたところ、書籍に書いてある通りに短いファイル名が自動生成されました。どうやら、日本語環境、それもいろいろ試してみて分かったことは、システムロケールが「日本語(日本)」であることが原因のようなのです。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Windows 11一般提供開始、企業での導入/展開時に注意すべきポイントは?
MicrosoftはWindowsデスクトップOSの最新バージョンである「Windows 11」を正式にリリースし、Windows 11対応ハードウェアを搭載したWindows 10デバイスに対して、無料アップグレードの段階的なロールアウトを開始しました。 - Windows 11登場! 11で変わること、思ったほど変わらないこと
新しいWindows OS「Windows 11」の正式出荷が2021年10月5日に開始された。Windows 10からの無償アップグレードが可能であるため、どのような新機能が実装されたのか気になる人も多いのではないだろうか。そこで、本稿ではWindows 11の新機能、削除された機能などを簡単にまとめてみた。 - 買って、試して分かったWindows 365(契約・セットアップ編)
Microsoftからクラウド上でWindows 10が動く「クラウドPC」の利用可能なサブスクリプションサービス「Windows 365」の提供が開始された。早速、サブスクリプションを契約し、クラウドPCの設定を行ってみた。契約からセットアップまでで見えてきた便利な点、不便な点などをまとめてみた。 - いよいよ完全終了へ。Internet Explorer(IE)サポート終了スケジュール
長らくWindows OSに標準装備されてきたInternet Explorer(IE)。その「寿命」は各種サポートの終了時期に左右される。Windows OSごとにIEのサポート終了時期を分かりやすく図示しつつ、見えてきた「終わり」について解説する。