So-net無料ブログ作成
検索選択

Mac OS XでWindows禁止文字 [Mac OS X]

NTFSにはファイル名禁止文字が沢山あるので、Mac OS XからWindowsにSMBで接続してファイル転送するとエラーになった。
が、最近同じことを試したら、なんと保存できる。FATのUSBメモリにも保存できる。いつの間に仕様変更したんだろう。

カーネルソースに詳細があります。

http://www.opensource.apple.com/source/xnu/xnu-1504.7.4/bsd/vfs/vfs_utfconv.c
/*
 * Invalid NTFS filename characters are encodeded using the
 * SFM (Services for Macintosh) private use Unicode characters.
 *
 * These should only be used for SMB, MSDOS or NTFS.
 *
 *    Illegal NTFS Char   SFM Unicode Char
 *  ----------------------------------------
 *    0x01-0x1f           0xf001-0xf01f
 *    '"'                 0xf020
 *    '*'                 0xf021
 *    '/'                 0xf022
 *    '<'                 0xf023
 *    '>'                 0xf024
 *    '?'                 0xf025
 *    '\'                 0xf026
 *    '|'                 0xf027
 *    ' '                 0xf028  (Only if last char of the name)
 *    '.'                 0xf029  (Only if last char of the name)
 *  ----------------------------------------
 *
 *  Reference: http://support.microsoft.com/kb/q117258/
 */
なんと、旧Service for Machintoshの仕様に倣い、Unicodeの私用領域を使って無理矢理保存するんだな。 当然のことながら、Windows側では正常に表示できません。 というか、SFMがそんな仕様になってたとは知らなかった。

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:[必須]
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この記事のトラックバックURL:
※言及リンクのないトラックバックは受信されません。