在开发过程中,有时需要根据不同的操作系统环境来执行不同的代码逻辑。对于使用NET6开发的应用程序而言,需要判断当前运行的操作系统。在本文中做出一下记录

可以使用Environment.OSVersion.ToString()获取运行系统的名称

在NET6中可以使用RuntimeInformation.IsOSPlatform来判断操作系统

下面是关于系统的判断代码

// 判断是否Windows系统
RuntimeInformation.IsOSPlatform(OSPlatform.Windows);

// 判断是否Linux系统
RuntimeInformation.IsOSPlatform(OSPlatform.Linux);

// 判断是否Unix内核系统
RuntimeInformation.IsOSPlatform(OSPlatform.FreeBSD);

// 判断是否IOS系统
RuntimeInformation.IsOSPlatform(OSPlatform.OSX);

我们平时在NET进行开发时,一般使用\\作为文件路径分隔符,但/是Unix系统上唯一可识别的目录分隔符。如果使用上面的系统识别判断再分别处理太麻烦了

这时候我们就可以用到NET已经封装好为我们提供的文件路径分隔符Path.DirectorySeparatorChar

// 使用例子
var path = $"Test1{Path.DirectorySeparatorChar}Test2{Path.DirectorySeparatorChar}test.txt";