ファイル名に使わない方が良い文字
¥とか/とか|とか、使っちゃいけない文字は、どうせ使えないんだからバッサリ割愛します。 例外的に、こういう文字を使うと、こんな時に困るよと言うのを紹介したいと思います。 「,」カンマ カンマを用いたファイル名にリネームしようとすると、Windowsのメッセージ内で使えない文字に含まれているバージョンがあります。(例:Windows7など) エラーメッセージが出ても実際使えるんですけど「.」(ドット)と見間違えるんでやめた方が良いのかもしれません。 末尾に「.」ドット(ピリオド) 本来はMS-DOSの制限だったのですが、今でも有効です。 逆に先頭に「.」が在るファイルは、UNIX系では隠しファイルとして特別な意味があるファイルとなっています。 ただこれ結構、末尾だろうが先頭だろうが「拡張子」という文化と相容れないので、色んなところで誤認識が多いんですよね。 なるべく必要な時以外は使わない方がお奨めです。 予約されている単語 特定のハードウェアなどを示すので、使用できません。 「CON, PRN, AUX, NUL, CLOCK$, COM0, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT0, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9」 「-」ハイフン いわゆるマイナス記号です。 最近はあまり聞かなくなりましたが、デスクトップ検索などの制御文字として使われることもあることから、検索でファイルが見つけられない系のトラブルがあります。 もちろん「+」も結構微妙です。 「 」半角スペース パス指定で区切り位置を調整するので「”」で括らなきゃいけなくなります。 可能であれば「_」アンダーバーなどに置き換えることを推奨します。 「Documents and Settings」とか「Program Files」とか、Windows95から半角スペースも使えるよ!ってアピールしたかっただけとちゃうんか?という気がしてなりません。 ただ全角スペースなら良いか?と言われれば微妙でして、見えない文字というのは、トラブル防止という観点からすると避けた方が良いと思います。 UNICODE文字、機種依存文字 いわゆる@や半角のカナなど、PCメールなどで送らないほうが良い文字などが該当します。 通常のPCでのやり取りは問題ないのですが、他のOSへ持っていった時、例えばスマートフォンとかもですね。 問題を起こすことが多々あります。 あと、UNICODE文字の中には文字を読む方向を変えるという、画面に表示されないモノ(制御文字と言います)などもありますので、使わないにこしたことはありません。 文字方向を変える制御文字などは悪用される場合も多々ありますしね。 ※オマケ フルパスで260文字以上になる名称 NTFSの環境において、ファイル名の最大の長さは約3万2千文字まで使えます。 ただし、Windowsの内部のAPIでもフルパス表記で260文字(MAX_PATHとして定義されてる)までしか対応していないものが多く、エクスプローラーも含めて操作不能に陥ることがあります。 実際、エクスプローラーなどでも削除することもできなくなりますので、悪意あるソフトで悪用されるシーンが多々あります。 (こういったファイルができてしまったら、コマンドプロンプトからショートファイル名で操作することで削除することが可能です)