在字符串中添加反斜杠

14

我有一个路径,想要在它下面添加一个名为“test”的新子文件夹。 请帮助我找出如何实现。 我的代码是:

string path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
 Console.WriteLine(path+"\test");

我得到的结果是:"c:\Users\My Name\Pictures est"

请帮我找出正确的方法。


\t 是一个制表符,可以使用 \t 或者路径+@"\test"。 - trinalbadger587
6个回答

32
不要尝试通过将字符串连接起来来构建路径名。请使用Path.Combine方法。
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
Console.WriteLine(Path.Combine(path, "test"));

Path 类 包含许多有用的静态方法,用于处理包含路径、文件名和扩展名的字符串。这个类非常有用,可以避免许多常见的错误,并且还允许编写更好的可移植性代码(在 Windows 上使用 "\",在 Linux 上使用 "/")。

Path 类是在命名空间 System.IO 中定义的。
您需要在代码中添加 using System.IO;


20

您需要进行转义。 \t 是制表符的转义序列,对应的值为 0x09

path + "\\test"

或者使用:

path + @"\test"

更好的做法是,让 Path.Combine 为您完成这项繁琐工作:

Path.Combine(path, "test");

Path 位于 System.IO 命名空间中。


8
有两种选项:
  1. 使用@符号,例如:path + @"\test"
  2. 使用双反斜杠,例如:path + "\\test"
这些选项与路径相关,在编写IT代码时很常见。

6

声明字符串变量add。

add += "\\"; //or :"\\" means backslash

3

反斜杠'\'是C#中字符串的转义字符。 您可以:

  • use Path.Combine

    Path.Combine(path, "test");
    
  • escape the escape character.

    Console.WriteLine(path+"\\test");
    
  • use the verbatim string literal.

    Console.WriteLine(path + @"\test");
    

1
反斜杠是转义字符,因此请使用
Console.WriteLine(path+"\\test");
或者
Console.WriteLine(path+@"\test");

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接