.NET Core中的跨平台文件名处理

如何以System.IO跨平台方式处理类中的文件名,以使其在Windows和Linux上都能正常工作?

例如,我编写了在Windows上可以完美运行的代码,但是在Ubuntu Linux上却没有创建文件:

var tempFilename = $@"..\Data\uploads\{filename}";

using (FileStream fs = System.IO.File.Create(tempFilename))

{

file.CopyTo(fs);

fs.Flush();

}

回答:

Windows使用反斜杠。Linux使用Slash。Path.Combine设置正确的符号:

Path.Combine方法-MSDN

以上是 .NET Core中的跨平台文件名处理 的全部内容, 来源链接: utcz.com/qa/401395.html

回到顶部