![appDataLocation 和 tempLocation 等位置的路徑中是否可以包含空格](https://rvso.com/image/1654738/appDataLocation%20%E5%92%8C%20tempLocation%20%E7%AD%89%E4%BD%8D%E7%BD%AE%E7%9A%84%E8%B7%AF%E5%BE%91%E4%B8%AD%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E5%8C%85%E5%90%AB%E7%A9%BA%E6%A0%BC.png)
C:\Users\username\AppData\Roaming
C:\Users\username\AppData\Local\Temp
我正在為 Windows 編寫一個應用程序,我的應用程式將經常使用上面的這兩個位置,為了避免任何意外,我想確定 Windows 是否允許這些位置在其路徑中包含空格,例如:
C:\Users\user Name\AppData\Roaming
C:\Users\user Name\AppData\Local\Temp
我瀏覽了一些 MS 文檔,但找不到這個具體資訊。
答案1
他們當然可以,不只是因為用戶名。
在所有 Windows 2000/XP 系統中,這兩個目錄位於:
C:\Documents and Settings\User\Application Data
C:\Documents and Settings\User\Local Settings\Temp
(我聽說有傳言說這個命名是故意選擇的,為了力量新寫的程式接受長檔名,以防「C:\Program Files」不足以推動。
雖然這些 Windows 版本現在大多不再受支持,但如果同一系統直接從 2000/XP 升級到 Vista/7,再從那裡升級到 Win8/10,這些路徑可能仍然存在於應用程式配置中。由於 Windows 創建了將舊名稱指向新名稱的隱藏符號鏈接,因此它們仍然在現代版本中有效。
一般來說,一個寫得好的程式應該總是假設任何路徑都可能包含空格、逗號、撇號和其他有趣的東西。自從“C:\My Documents”以來,它們就被允許出現在路徑中視窗95– 到 2021 年,它們應該是一個基線假設,而不是一個「驚喜」!
答案2
使用者名稱/帳戶名稱沒有限制。它可能包含空格,並且文件認為沒有必要提及這一點。
例如看帖子 Windows 10 - 帶有空格的使用者名稱和路徑,其中用戶名為「Miha Šušteršič」。