我有點困惑。我認爲c#中的「@」是一個標誌,用於像@「C:\ Users ...」那樣逐字地解釋文本。它避免了需要雙反斜槓。爲什麼即使路徑包含@之前的路徑,路徑也能工作「\」
但是,爲什麼路徑也可以工作,如果他們包含雙反斜槓和@? 鐵:
var temp = File.ReadAllText(@"C:\\Users\\text.txt").ToString(); // no error
我這種情況下,必須將字符串字面意思是「C:\\ \\用戶的text.txt」 - 以前的,因爲「@」 - 這是不是一個有效的Windows路徑(編輯:多數民衆贊成錯了,它是一個有效的路徑,只有探險家不會接受它 - 感謝Muctadir Dinar),那麼爲什麼這個工作?
在此先感謝
多路徑分隔符被解釋爲單路徑分隔符。 –
這是一條有效的路徑。在具有多路徑分隔符的命令提示符(cmd)中嘗試cd命令。 – Muctadir
謝謝Muctadir Dinari,我在資源管理器中試過這個會引發錯誤,我沒有想過cmd。也感謝gp,這是很重要的知道(我搜索Msdn之前,沒有找到任何東西)。 – BudBrot