.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