如何从" D:\\ Directory1 \\ file1.txt"获取字符串变量值;到@" D:\ Directory1 \ file1.txt"

时间:2014-10-06 14:04:54

标签: c# string string-formatting stringbuilder

我做了一些C#程序,它获取了最新创建的文件 例如,它是D:\Directory1\file1.txt文件

当它获取文件时,其文件的地址存储在某个变量上,如下这个字符串:
 "D:\\Directory1\\file1.txt"
当您在调试中观看时,您可以看到此值。

   FileInfo f1;                   // this is a latest created file "D:\Directory1\file1.txt"
   string s1 = f1.FullName;       // string value will be "D:\\Directory1\\file1.txt"
   string s2 = SomeFunction(s1);  // in order to get @"D:\Directory1\file1.txt" value

如果将其值分配给不同的变量s2,那么您将再次获得相同的字符串值!
那么如何将这个值分配给不同的变量以获得@" D:\ Directory1 \ file1.txt"值。
我应该使用StringBuilder类吗? 我应该使用String.Format吗?
不管怎样,谢谢你!

2 个答案:

答案 0 :(得分:7)

您在调试器中看到的值是转义的,因为它在C#中。

使用逐字@"\"时,实际上是"\\",或者我们人类在屏幕\上看到它。

不要让你的头被你在调试器中看到的值弄乱。他们真的没问题。单击手表中的放大镜,您将看到。

答案 1 :(得分:3)

变量已经是:

  

d:\ directory1中\ FILE1.TXT

在调试器中暂停时查看字符串将转义反斜杠,例如将\替换为\\

使用文本可视化工具或将值打印到控制台,应该没问题。