C# DirectorySeparatorChar和AltDirectorySeparatorChar之间的区别是什么
System.io.DirectorySeportorChar返回字符“\”,而System.io.AltDirectorySeportorChar返回“/” 更具体地说,System.Io.altdirectorysepositorchar的任务是什么?我们何时使用它?来自文档() 提供特定于平台的备用字符,用于在反映分层文件系统组织的路径字符串中分隔目录级别 在路径字符串中使用alt分隔符的方式与使用普通分隔符的方式相同。像这样:C# DirectorySeparatorChar和AltDirectorySeparatorChar之间的区别是什么,c#,.net,vb.net,system.io.file,C#,.net,Vb.net,System.io.file,System.io.DirectorySeportorChar返回字符“\”,而System.io.AltDirectorySeportorChar返回“/” 更具体地说,System.Io.altdirectorysepositorchar的任务是什么?我们何时使用它?来自文档() 提供特定于平台的备用字符,用于在反映分层文件系统组织的路径字符串中分隔目录级别 在路径字符串中使用alt分隔符的方式与使用普通分隔符的方式相同。像这样: static void Main(string[] args
static void Main(string[] args)
{
string[] pathStrings =
{
@"C:\dir\subdir\file.txt",
"C:/dir/subdir/file.txt",
"/dir/subdir/file.txt"
};
foreach (var p in pathStrings)
{
var dir = Path.GetDirectoryName(p);
var file = Path.GetFileName(p);
Console.WriteLine($"{dir} {file}");
}
}
以及输出:
C:\dir\subdir file.txt
C:\dir\subdir file.txt
\dir\subdir file.txt
更具体地说,System.Io.altdirectorysepositorchar的任务是什么以及我们何时使用它?
任务是确保/始终在路径中工作,即使对于真正喜欢\的操作系统(如Windows)。这是否回答了您的问题?这根本不能回答这个问题。这并不能解释为什么我们除了AltDirectorySeparatorChar之外还有DirectorySeparatorChar。事实上,与MSDN描述的唯一区别是,.Windows支持两个分隔符(从答案中可以明显看出,并且在链接的文档中有说明),因此我猜它们需要两个属性。