C#/Mac:Path.GetInvalidPathChars()和Path.GetInvalidFileNameChars()结果
这在OSX上显示什么?有人能用Mono在他们的机器上运行这个吗C#/Mac:Path.GetInvalidPathChars()和Path.GetInvalidFileNameChars()结果,c#,macos,mono,path,platform-specific,C#,Macos,Mono,Path,Platform Specific,这在OSX上显示什么?有人能用Mono在他们的机器上运行这个吗 foreach (char c in System.IO.Path.GetInvalidPathChars()) { Console.Write((byte)c); Console.Write(", "); } 这显示了什么: foreach (char c in System.IO.Path.GetInvalidFileNameChars()) { Console.Write((byte)c); Cons
foreach (char c in System.IO.Path.GetInvalidPathChars())
{
Console.Write((byte)c);
Console.Write(", ");
}
这显示了什么:
foreach (char c in System.IO.Path.GetInvalidFileNameChars())
{
Console.Write((byte)c);
Console.Write(", ");
}
作为参考,我在Windows和Linux中包含了GetInvalidPathChars的输出
在Windows中输出:
34, 60, 62, 124, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 1
8、19、20、21、22、23、24、25、26、27、28、29、30、31、
openSUSE中的输出:
0,
此外,我还在Windows和Linux中包含GetInvalidFileNameChars的输出
在Windows中输出:
34, 60, 62, 124, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 1
8、19、20、21、22、23、24、25、26、27、28、29、30、31、58、42、63、92、47、
openSUSE中的输出:
0,47,
问候,
_NTMac OS X上的输出与Linux上的输出相同: GetInvalidPathChars:0,
GetInvalidFileNameChars:0,47,以下是Github上Mono的相关代码:
当不在Windows上运行时,这两种方法仅返回空字符,
GetInvalidFileNameChars
另外还返回正斜杠字符。对于所使用的非Windows操作系统或文件系统,似乎没有任何区别。很好的参考资料。为了其他阅读器的利益,GetInvalid*Chars
不保证检索平台上的所有无效字符,但所有返回的字符都应该是无效的。在示例代码中,您将字符转换为字节。这会破坏你想要的信息;你会得到一些可能毫无意义的数字。您应该改为强制转换为int。在不同装载的文件系统上运行它会很有趣。当从FAT文件系统运行时,是否有人可以在Linux或Mac上运行此功能?