全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C# Environment类的常用属性 - 获取系统信息和特殊文件夹路径

Environment类提供系统信息和环境变量操作,如OS版本、.NET版本、计算机名、用户名、处理器数量及64位判断;通过GetFolderPath获取桌面、文档、AppData等特殊文件夹路径;支持当前目录、环境变量读写及进程退出,适用于跨平台配置管理与文件操作。

Environment 类是 C# 中用于获取有关当前运行环境和操作系统相关信息的重要类,位于 System 命名空间下。它提供了一系列静态属性和方法,可用于读取系统信息、用户信息以及特殊文件夹路径等,非常适合在应用程序中进行配置管理、日志记录或文件操作时使用。

获取系统基本信息

通过 Environment 类可以快速获取与当前运行环境相关的基础信息:

  • Environment.OSVersion:返回操作系统版本信息,如 Windows 10、Linux 或 macOS 的具体版本。
  • Environment.Version:获取当前 .NET 运行时的版本号(CLR 版本)。
  • Environment.MachineName:返回运行程序的计算机名称。
  • Environment.UserName:获取当前登录用户的用户名(Windows 下为登录名,Linux/macOS 下为当前用户)。
  • Environment.ProcessorCount:返回 CPU 的逻辑处理器数量,可用于并行任务调度参考。
  • Environment.Is64BitOperatingSystemEnvironment.Is64BitProcess:分别判断操作系统和当前进程是否为 64 位。

例如:

Console.WriteLine($"操作系统: {Environment.OSVersion}");
Console.WriteLine($".NET 版本: {Environment.Version}");
Console.WriteLine($"电脑名称: {Environment.MachineName}");
Console.WriteLine($"当前用户: {Environment.UserName}");
Console.WriteLine($"处理器核心数: {Environment.ProcessorCount}");
Console.WriteLine($"是否64位系统: {Environment.Is64BitOperatingSystem}");

获取特殊文件夹路径

在开发中经常需要访问用户目录、桌面、文档等系统定义的文件夹,Environment 提供了 GetFolderPath 方法结合 Environment.SpecialFolder 枚举来安全获取这些路径。

  • Environment.GetFolderPath(Environment.SpecialFolder.Desktop):获取当前用户的桌面路径。
  • Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments):获取“我的文档”文件夹路径。
  • Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData):获取应用程序数据目录(通常用于保存用户配置,路径如 C:\Users\用户名\AppData\Roaming)。
  • Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData):获取本地应用程序数据目录(AppData\Local),适合存放本地缓存。
  • Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles):获取 Program Files 安装目录。
  • Environment.GetFolderPath(Environment.SpecialFolder.System):获取系统目录(如 System32)。

示例代码:

Console.WriteLine($"桌面路径: {Environment.GetFolderPath(Environment.SpecialFolder.Desktop)}");
Console.WriteLine($"文档路径: {Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)}");
Console.WriteLine($"AppData(Roaming): {Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)}");
Console.WriteLine($"AppData(Local): {Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)}");

其他常用属性与方法

  • Environment.CurrentDirectory:获取或设置当前工作目录。注意这可能不同于程序所在目录。
  • Environment.SystemDirectory:返回系统目录路径(如 C:\Windows\System32)。
  • Environment.GetEnvironmentVariable("PATH"):读取指定环境变量值,比如 "PATH"、"TEMP" 等。
  • Environment.SetEnvironmentVariable("MyVar", "MyValue"):设置自定义环境变量(作用范围取决于目标参数)。
  • Environment.Exit(0):终止当前进程。

使用环境变量可实现灵活配置,例如读取开发/生产环境设置:

string env = Environment.GetEnvironmentVariable("ASPNET_ENVIRONMENT");
if (env == "Development")
{
    Console.WriteLine("当前为开发环境");
}

基本上就这些。Environment 类简单但非常实用,尤其在跨平台应用中能帮助你正确获取路径和系统状态,避免硬编码路径带来的兼容性问题。合理使用 SpecialFolder 和环境变量能让程序更具适应性和健壮性。


# linux  # windows  # 计算机  # 操作系统  # 处理器  # 编码  # app  # 电脑  # mac  # macos  # 环境变量  # win  # 开发环境  # 命名空间  # 运行环境  # 应用程序  # 文档  # 配置管理  # 可用于  # 适用于  # 能让  # 相关信息  # 自定义 


相关文章: 建站之星如何取消后台验证码生成?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  建站之星导航如何优化提升用户体验?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  网站制作费用多少钱,一个网站的运营,需要哪些费用?  学校建站服务器如何选型才能满足性能需求?  微信h5制作网站有哪些,免费微信H5页面制作工具?  建站之星如何助力企业快速打造五合一网站?  兔展官网 在线制作,怎样制作微信请帖?  如何通过虚拟主机快速完成网站搭建?  如何快速查询网址的建站时间与历史轨迹?  建站之星代理商如何保障技术支持与售后服务?  javascript中的try catch异常捕获机制用法分析  自助网站制作软件,个人如何自助建网站?  简历在线制作网站免费版,如何创建个人简历?  建站之星如何优化SEO以实现高效排名?  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  湖州网站制作公司有哪些,浙江中蓝新能源公司官网?  建站主机是什么?如何选择适合的建站主机?  如何通过网站建站时间优化SEO与用户体验?  ,如何利用word制作宣传手册?  建站主机选哪家性价比最高?  如何挑选高效建站主机与优质域名?  如何在腾讯云免费申请建站?  如何快速搭建高效WAP手机网站?  建站之星安装提示数据库无法连接如何解决?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  青岛网站设计制作公司,查询青岛招聘信息的网站有哪些?  如何在Golang中使用replace替换模块_指定本地或远程路径  c++怎么用jemalloc c++替换默认内存分配器【性能】  股票网站制作软件,网上股票怎么开户?  如何解决ASP生成WAP建站中文乱码问题?  建站为何优先选择香港服务器?  ,网页ppt怎么弄成自己的ppt?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  建站之星安全性能如何?防护体系能否抵御黑客入侵?  建站主机如何选?性能与价格怎样平衡?  西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?  如何通过VPS建站实现广告与增值服务盈利?  建站之星与建站宝盒如何选择最佳方案?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  如何使用Golang table-driven基准测试_多组数据测量函数效率  建站主机与服务器功能差异如何区分?  建设网站制作价格,怎样建立自己的公司网站?  建站VPS选购需注意哪些关键参数?  宁波自助建站系统如何快速打造专业企业网站?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  ui设计制作网站有哪些,手机UI设计网址吗? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。