如何使用C#从以下字符串中获取目录和文件名:
string test =“test @ test.com,snap555.jpg,c:\ users \ test \ desktop \ snap555.jpg”;
我只想从字符串中获取“c:\ users \ test \ desktop \ snap555.jpg”并将其转换为另一个字符串。
“,”之前的字符将始终不同且长度不同,例如:“bob @ bob.com,x.txt,c:\ users \ test \ desktop \ x.txt”
在c#中执行此操作的最简单方法是什么?
感谢。
吨
答案 0 :(得分:3)
如果逗号分隔符未出现在第一部分中,您可以使用:
string pathName = test.Split(',')[2];
如果逗号后面的空格有问题,并且假设第一部分从不有空格,则可以使用:
char[] delims = new char[] { ',', ' '};
string pathName = test.Split(delims, StringSplitOptions.RemoveEmptyEntries)[2];
此示例假设您始终需要第三个项,如问题中所述。否则,将上面示例中的2更改为所需项目的正确索引。例如,如果它应该始终是最后一项,则可以执行以下操作:
char[] delims = new char[] { ',', ' '};
string[] items = test.Split(delims, StringSplitOptions.RemoveEmptyEntries);
string pathName = items[items.Length-1];
答案 1 :(得分:2)
如果总有一个逗号,你可以使用
string test = "snap555.jpg, c:\users\test\desktop\snap555.jpg";
string[] parts = test.Split(',');
然后从零件阵列中获取您需要的任何东西。