在C#中编写文件path时,我发现我可以写“C:\”或“C:/”之类的东西,并获得相同的path。 哪一个被推荐? 我听说某个地方使用单个/比使用\更为推荐(使用\作为转义序列)。
Windows支持两个路径分隔符,所以两者都能工作,至少对于本地路径(/将不适用于网络路径)。 问题是在Windows上使用工作但非标准的路径分隔符(/)没有实际的好处,特别是因为你可以使用逐字字符串文字:
string path = @"C:\" //Look ma, no escape
唯一可以看到使用/分隔符的好处是,只能使用相对路径,并使用Windows和Linux中的代码。 然后你可以把“../foo/bar/baz”指向同一个目录。 但即使在这种情况下最好留下System.IO命名空间( Path.DirectorySeparatorChar , Path.Combine )来处理这些问题。
请使用Path.DirectorySeparatorChar或更好,因为Poita建议使用Path.Combine 。
使用Path.Combine
,你不需要担心这样的语义。
我用C#写这样的路径:
@ “C:\我的\路径”
@字符关闭\转义。
这不是一个C#问题 – 这是一个Windows问题。 Windows中的路径通常显示为反斜杠:C :. 在我看来,这就是你应该在C#中使用的。 使用@“C:\”来防止反锯齿字符的特殊处理。