閱讀英文

共用方式為


檔名中使用的字元集

NTFS 會將檔名儲存在 Unicode 中。 相反地,較舊的 FAT12、FAT16 和 FAT32 文件系統會使用 OEM 字元集。 如需詳細資訊,請參閱 代碼頁

建立 FAT 檔案的非 Unicode 應用程式有時必須使用標準 C 執行時間連結庫轉換函式,在 Windows 代碼頁字元集與 OEM 代碼頁字元集之間進行轉譯。 使用文件系統函式的 Unicode 實作,就不需要執行這類翻譯。

您的應用程式可以使用泛型字串類型,如 適用於字串的 Windows 資料類型中所述,。 應用程式也可以使用函式原型 慣例中所述的技術來使用泛型函式原型,。 針對泛型字串類型或泛型函式原型,您的應用程式可以使用單一來源檔案來編譯 Unicode 或非 Unicode 版本。 為了允許這樣做,應用程式會針對編譯 Unicode 時未叫用的函式提供巨集。

在NTFS和 FAT 檔案系統中,特殊檔名字符包括:『\』、『/』、『.』、『?』和 『*』。 在 OEM 代碼頁中,這些特殊字元位於 ASCII 字元範圍中(0x00到0x7F)。 其 Unicode 對等專案在 2 位元組格式中是相同的值,0x0000到0x007F。

警告

日文作系統上使用的 Windows 代碼頁和 OEM 代碼頁字元集包含日元符號 (¥) 而不是反斜杠 (\)。 因此,日元符號是NTFS和FAT檔案系統的禁止字元。 將 Unicode 對應至日文語言代碼頁時,WideCharToMultiByte 和其他轉換函式會將反斜杠 (U+005C) 和一般 Unicode Yen 符號 (U+00A5) 對應至相同的字元。 基於安全性考慮,您的應用程式通常不允許 Unicode 字串中的字元 U+00A5,而 Unicode 字串可能會轉換為 FAT 檔名。 如需詳細資訊,請參閱 安全性考慮:國際功能

 

在 Windows API Unicode

安全性考慮:國際功能