我有一个路径,我想在其中添加一些名为test的新子文件夹。 请帮我看看如何做到这一点。 我的代码是:
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
Console.WriteLine(path+"\test");
我得到的结果是:“c:\ Users \ My Name \ Pictures \ test”
请帮我找到正确的方法。
答案 0 :(得分:30)
不要尝试构建串联字符串的路径名。使用Path.Combine方法
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
Console.WriteLine(Path.Combine(path, "test"));
Path class包含许多有用的静态方法来处理包含路径,文件名和扩展名的字符串。此类对于避免许多常见错误非常有用,并且还允许在操作系统之间编写更好的可移植性(在win上为“\”,在Linux上为“/”)
Path类在名称空间System.IO
中定义
您需要在代码中添加using System.IO;
答案 1 :(得分:20)
你需要逃避它。 \t
是标签0x09
的转义序列。
path + "\\test"
或使用:
path + @"\test"
更好的是,让Path.Combine
为你做脏事:
Path.Combine(path, "test");
Path
位于System.IO
命名空间。
答案 2 :(得分:7)
有两种选择:
答案 3 :(得分:6)
string add;
add += "\\"; //or :"\\" means backslash
答案 4 :(得分:3)
反斜杠'\'
是C#中字符串的转义字符。
你可以:
使用Path.Combine
Path.Combine(path, "test");
逃脱逃脱角色。
Console.WriteLine(path+"\\test");
使用逐字字符串文字。
Console.WriteLine(path + @"\test");
答案 5 :(得分:1)
反斜杠是一个转义字符,所以请使用
Console.WriteLine(path+"\\test");
或
Console.WriteLine(path+@"\test");