為什么.NET會(huì)為路徑中已存在的斜杠添加額外的斜杠?我注意到C#\為路徑添加了額外的斜杠()。考慮一下這條路C:\Test。當(dāng)我在文本可視化器中檢查帶有此路徑的字符串時(shí),實(shí)際的字符串是C:\\Test。為什么是這樣?它讓我感到困惑,因?yàn)橛袝r(shí)我可能想要將路徑分開(kāi)(使用string.Split()),但不得不想知道使用哪個(gè)字符串(一個(gè)或兩個(gè)斜杠)。
3 回答

蕪湖不蕪
TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個(gè)贊
Net不會(huì)在這里添加任何內(nèi)容。你看到的是調(diào)試器如何選擇顯示字符串的效果。C#字符串可以用2種形式表示
逐字字符串:以
@
符號(hào)為前綴,刪除了轉(zhuǎn)義\\
字符的必要性普通字符串:標(biāo)準(zhǔn)C樣式字符串,其中
\\
字符需要自行轉(zhuǎn)義
調(diào)試器將字符串文字顯示為普通字符串與逐字字符串。這只是一個(gè)顯示問(wèn)題,它不會(huì)影響它的潛在價(jià)值。

胡子哥哥
TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個(gè)贊
調(diào)試器可視化器以C#代碼中出現(xiàn)的形式顯示字符串。因?yàn)?code>\用于轉(zhuǎn)義非verbatum C#字符串中的字符,所以\\
是正確的轉(zhuǎn)義表單。
- 3 回答
- 0 關(guān)注
- 790 瀏覽
添加回答
舉報(bào)
0/150
提交
取消