C# 如何在Linux操作系统下读取文件

  发布在Window环境上的微服务需要部署在Linux环境上,本以为没有什么问题,结果因为一处读取文件路径的原因报错了,在此记录一下两个问题:1.C#如何判断当前运行环境是什么操作系统;2.C#读取文件传输路径是什么?

  一、判断当前操作系统:

            var env = Environment.GetEnvironmentVariables();    //获取当前环境变量    
            var os = Convert.ToString(env["OS"]);               //获取当前操作系统
            var dr = Convert.ToString(env["SystemDrive"]);      //获取当前系统驱动盘

其中运行在Windows系统下os的值是"Windows_NT"。

  二、C#读取文件传输路径:

                string fileName = dr + @"../../../ExecuteSql/";     //root/ExcuteSql文件夹下的文件
                var filePath = fileName + usData.File;              //文件名
                string sql = System.IO.File.ReadAllText(filePath);  //读取文件

注意两点:1.斜杠是"/";2.路径和文件名一定注意大小写,因为Linux是区分大小写的。

posted @ 2019-03-16 14:50  还可入梦  阅读(3942)  评论(0编辑  收藏  举报