I have a path and I want to add to it some new sub folder named test. Please help me find out how to do that. My code is :
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
Console.WriteLine(path+"\test");
The result I'm getting is : "c:\Users\My Name\Pictures est"
Please help me find out the right way.
Do not try to build pathnames concatenating strings. Use the Path.Combine method
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
Console.WriteLine(Path.Combine(path, "test"));
The Path class contains many useful static methods to handle strings that contains paths, filenames and extensions. This class is very useful to avoid many common errors and also allows to code for a better portability between operating systems ("\" on win, "/" on Linux)
The Path class is defined in the namespace System.IO
.
You need to add using System.IO;
to your code
You need escape it. \t
is an escape-sequence for Tabs 0x09
.
path + "\\test"
or use:
path + @"\test"
Better yet, let Path.Combine
do the dirty work for you:
Path.Combine(path, "test");
Path
resides in the System.IO
namespace.
There are two options:
- Use the @ symbol e.g.: path + @"\test"
- use a double backslash e.g.: path + "\\test"
string add;
add += "\\"; //or :"\\" means backslash
Backslash '\'
is an escape character for strings in C#.
You can:
use
Path.Combine
Path.Combine(path, "test");
escape the escape character.
Console.WriteLine(path+"\\test");
use the verbatim string literal.
Console.WriteLine(path + @"\test");
the backslash is an escape character, so useConsole.WriteLine(path+"\\test");
orConsole.WriteLine(path+@"\test");
来源:https://stackoverflow.com/questions/16899522/add-backslash-to-string