2013-05-15 108 views
-1

我在asp.net mvc工作。要將\字符替換爲/字符。但它不起作用。 讓替換子串不工作

string path="D:\Qamar\Cartoons\Image.jpg"; 
path=path.Replace("\","/"); 

我得到第二行的錯誤。請幫助如何更換。

+1

使用@ \「 –

+0

http://stackoverflow.com/questions/4673437/c-sharp-replace-characters可能會幫助你。 – Mogli

+0

_「我在第二行發生錯誤。」 - 如果你解釋了什麼樣的錯誤,這將是很好的。這不是代替不起作用,你會得到一個編譯錯誤。 – CodeCaster

回答

4

試試這個:

string path="D:\Qamar\Cartoons\Image.jpg"; 
path=path.Replace("\\","/"); 

您需要轉義反斜線在第一個參數爲它作爲......反斜槓處理(即的,而不是"\\""\")。

+1

或者在字符串前使用'@'使它成爲一個逐字字符串。 –

+1

+1,你打我20秒大聲笑 – Raver0124

+0

@ Raver0124::)大聲笑它發生了(對我來說)。 :} – J0e3gan

0

\是c#中字符串文字中特殊的轉義字符。 你可以先用@字符串,使其逐字或逃避\另一個\

path=path.Replace(@"\","/"); 

path=path.Replace("\\","/"); 
1

您需要逃回斜槓。最簡單的方法是用@前綴的字符串:

path=path.Replace(@"\","/"); 

另一種方法是用一個反斜槓逃脫它:

path=path.Replace("\\","/"); 
1

試試這個

th=path.Replace("\\","/") 
0

\escape character,所以你代碼甚至不會編譯使用@\\來編譯代碼。然後它會工作

string [email protected]"D:\Qamar\Cartoons\Image.jpg"; 
path=path.Replace(@"\","/"); 

string path="D:\\Qamar\\Cartoons\\Image.jpg"; 
path=path.Replace("\\","/"); 

,但如果你用路徑或URI,則可以使用內置的C#的方法來做到這一點像以前一樣「的

System.Uri uri1 = new Uri(@"D:\Qamar\Cartoons\Image.jpg"); 
string whatYouWant = uri1.AbsolutePath; //Result is: "D:/Qamar/Cartoons/Image.jpg"