求问:C#怎样将\转换成\\?
从文件中读到一个路径的字符串,但是显示的时候用\分割各级目录,而利用这个路径根本读不出相应的文件。比如说我有一个文件的所在路径是C:\desktop\a.mp3,但是这个...
从文件中读到一个路径的字符串,但是显示的时候用 \ 分割各级目录,而利用这个路径根本读不出相应的文件。
比如说我有一个文件的所在路径是C:\desktop\a.mp3,但是这个路径在无法通过FileInfo进行实例化,总是显示路径中有非法字符。估计是 \ 被当成是转义字符了。
请问在C#中有什么办法可以将 \ 转换成 \\ 呢?求问大神~ 展开
比如说我有一个文件的所在路径是C:\desktop\a.mp3,但是这个路径在无法通过FileInfo进行实例化,总是显示路径中有非法字符。估计是 \ 被当成是转义字符了。
请问在C#中有什么办法可以将 \ 转换成 \\ 呢?求问大神~ 展开
3个回答
展开全部
假设字符串a是文件的一个路径 你可以写成这样 a=@“C:\desktop\a.mp3” 就是在路径的字符串前加个@就行了
更多追问追答
追问
我现在得到的是一个字符串变量str,str的值就是C:\desktop\a.mp3
那个@,我试过了,把str改成@str,但还是说我的字符串是非法路径。。。
具体我是这样做的:
FileInfo fi = new FileInfo(@str);
但编译报错。。。
追答
FileInfo fi = new FileInfo(@str);
你试试看改成:
string str=@"………………";
FileInfo fi = new FileInfo(str);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-04-06
展开全部
\是转义字符,\\等于\,那\\\\不就等于\\了吗。不过C#有个特殊字符@在字符串前加一个@,字符串中的\就不会被当作转义字符了。比如:
@"http:\\\\www.abcd.com"就等于"http:\\www.abcd.com"。
@"http:\\\\www.abcd.com"就等于"http:\\www.abcd.com"。
追问
\\\\ 会出现编译错误。。。我现在得到的是一个字符串变量str,str的值就是C:\desktop\a.mp3
我本来想用str.Replace('\\','\\\\');,但是编译出现错误。
然后那个@,我也试过了,把str改成@str,但还是说我的字符串是非法路径。。。
追答
这样写:
a="C:\\desktop\\a.mp3";
FileInfo fi = new FileInfo(a);
或者你这么写:
a=@"C:\desktop\a.mp3";
FileInfo fi = new FileInfo(a);
以上两种写法是不会出错的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
加个@可以了,@"C:\desktop\a.mp3"
追问
我现在得到的是一个字符串变量str,str的值就是C:\desktop\a.mp3
那个@,我试过了,把str改成@str,但还是说我的字符串是非法路径。。。
具体我是这样做的:
FileInfo fi = new FileInfo(@str);
但编译报错。。。
追答
不对...string str="C:\desktop\a.mp3";这样本身就是错误的啊,你怎么可能编译通过!!
要不你这样吧str.replace("\","\\");能否调试打下断点,截图个给我们看下str到底是什么值么。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询