StreamWriter - “\”和“/”之间的区别

时间:2012-11-12 10:18:23

标签: c# streamwriter

执行streamwriter时\/有什么区别?

e.g。

示例1:

Streamwriter sw = new Streamwriter("/test folder/Output/test.txt");

示例2:

Streamwriter sw = new Streamwriter(@"\test folder\Output\test.txt");

我也看到你在第二个例子的前面需要@符号。

5 个答案:

答案 0 :(得分:4)

没有区别,因为.NET会识别路径中的onethe other

但是,由于\出现在字符串文字内(它是转义序列的开头)时具有特殊含义,因此第二个示例使用verbatim string literal语法。它本可以使用\\代替\

答案 1 :(得分:2)

添加@只会提高可读性,以@开头的字符串只会在编译时将所有\替换为\\\在需要的地方添加。

答案 2 :(得分:1)

两者都是.NET中的有效路径分隔符。

IOW,这是完全一样的。

答案 3 :(得分:1)

\通常在Windows中用于分隔目录,但我认为在大多数情况下它也会接受/

\也需要转义,因此需要@符号。你也可以使用\\来逃避这个角色。

答案 4 :(得分:1)

因为\启动转义字符。例如,"\""将打印"。如果您想将\用作字符,则需要在字符串前添加@或使用\\。如您所见,它与path-s无关,两种形式都适用于streamwriter