更新记录

本文迁移自Panda666原博客,原发布时间:2021年6月30日。

一、说明

每种平台都其预定义的规则,比如Windows平台有自己的规定、公司也有预定义的规章制度。那么在平台上开发和干活,就要遵守人家的约定进行工作。当然,叛逆的你也可以不按约定出牌。常用Windows系统的小伙伴,通过GUI操作系统常用的路径基本大家都熟悉。下面通过编程的方式获得系统的常见路径。

二、使用Environment类型

直接Environment静态类型的GetFolderPath()方法即可获得许多预定义的Windows常见路径。

通过在Visual Studio中F12查看类型,可以看到详细的枚举定义。

实例具体如下:

//获得桌面所在的路径(虚拟)
Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
//获得桌面所在的路径(实际)
Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
//获得启动下的应用程序目录
Console.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.Programs)
//获得我的文档路径
Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
//获得我的文档路径
Environment.GetFolderPath(Environment.SpecialFolder.Personal)
//获得我最喜欢路径
Environment.GetFolderPath(Environment.SpecialFolder.Favorites)
//获得开启启动程序存放的目录
Environment.GetFolderPath(Environment.SpecialFolder.Startup)
//获得开启启动程序存放的目录(所有用户可见)
Environment.GetFolderPath(Environment.SpecialFolder.CommonStartup)
//获得用户最近使用的目录
Environment.GetFolderPath(Environment.SpecialFolder.Recent)
//获得菜单项目录
Environment.GetFolderPath(Environment.SpecialFolder.SendTo)
//获得开始菜单目录
Environment.GetFolderPath(Environment.SpecialFolder.StartMenu)
//获得开始菜单上的目录(所有用户可见)
Environment.GetFolderPath(Environment.SpecialFolder.CommonStartMenu)
//获得我的音乐目录
Environment.GetFolderPath(Environment.SpecialFolder.MyMusic)
//获得我的视频目录
Environment.GetFolderPath(Environment.SpecialFolder.MyVideos)
//我的图片所在目录
Environment.GetFolderPath(Environment.SpecialFolder.MyPictures)
//获得网络虚拟文件夹所在目录
Environment.GetFolderPath(Environment.SpecialFolder.NetworkShortcuts)
//获得字体所在目录
Environment.GetFolderPath(Environment.SpecialFolder.Fonts)
//获得模板目录
Environment.GetFolderPath(Environment.SpecialFolder.Templates)
//获得模板文件目录(所有用户可见)
Environment.GetFolderPath(Environment.SpecialFolder.CommonTemplates)
//获得桌面所在目录(所有用户可见)
Environment.GetFolderPath(Environment.SpecialFolder.CommonDesktopDirectory)
//获得应用数据所在目录(带同步)
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
//获得应用数据所在目录(本地用户)
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
//获得[internet]网络临时文件所在目录
Environment.GetFolderPath(Environment.SpecialFolder.InternetCache)
//获得[internet]网络Cookie所在目录
Environment.GetFolderPath(Environment.SpecialFolder.Cookies)
//获得[internet]浏览历史记录
Environment.GetFolderPath(Environment.SpecialFolder.History)
//获得应用数据所在目录
Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)
//Windows所在目录
//%windir% or %SYSTEMROOT%
Environment.GetFolderPath(Environment.SpecialFolder.Windows)
//System所在目录
Environment.GetFolderPath(Environment.SpecialFolder.System)
//System所在目录(x86)
Environment.GetFolderPath(Environment.SpecialFolder.SystemX86)
//Program Files所在目录
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles)
//Program Files所在目录(x86)
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86)
//当前用户配置文件顶层所在目录
Environment.GetFolderPath(Environment.SpecialFolder.UserProfile)
//应用程序共享文件所在目录
Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles)
//应用程序共享文件所在目录(x86)
Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFilesX86)
//公用文档目录
Environment.GetFolderPath(Environment.SpecialFolder.CommonDocuments)
//公用音乐目录
Environment.GetFolderPath(Environment.SpecialFolder.CommonMusic)
//公用图片目录
Environment.GetFolderPath(Environment.SpecialFolder.CommonPictures)
//公用视频目录
Environment.GetFolderPath(Environment.SpecialFolder.CommonVideos)

.NET中获取Windows的常见路径的更多相关文章

  1. java如何从一段html代码中获取图片的src路径

    java如何从一段html代码中获取图片的src路径 package com.cellstrain.icell.Test; import java.util.ArrayList;import java ...

  2. Spring MVC中获取当前项目的路径

    Spring MVC中获取当前项目的路径 在web.xml中加入以下内容 <!--获取项目路径--> <context-param> <param-name>web ...

  3. IOS中获取各种文件的路径介绍及方法

    IOS中获取各种文件的目录路径的方法 技术交流新QQ群:414971585 iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. docum ...

  4. [C#]中获取当前程序运行路径的方法

    获取当前程序运行路径: ①//获取当前 Thread 的当前应用程序域的基目录,它由程序集冲突解决程序用来探测程序集.string str = System.AppDomain.CurrentDoma ...

  5. 定时发布任务,在global.asax中获取文件的物理路径的方法

    如果要把一个相对路径或者虚拟路径映射道服务器的物理路径,通常会使用Server.MapPath()函数,比如将根目录下的html目录映射为物理路径:Server.MapPath("html& ...

  6. Asp.Net Core 中获取应用程序物理路径(Getting the Web Root Path and the Content Root Path in ASP.NET Core)

    如果要得到传统的ASP.Net应用程序中的相对路径或虚拟路径对应的服务器物理路径,只需要使用使用Server.MapPath()方法来取得Asp.Net根目录的物理路径,如下所示: // Classi ...

  7. [转] ASPNET Core 中获取应用程序物理路径

    如果要得到传统的ASP.Net应用程序中的相对路径或虚拟路径对应的服务器物理路径,只需要使用使用Server.MapPath()方法来取得Asp.Net根目录的物理路径,如下所示: // Classi ...

  8. .Net Core api 中获取应用程序物理路径wwwroot

    如果要得到传统的ASP.Net应用程序中的相对路径或虚拟路径对应的服务器物理路径,只需要使用使用Server.MapPath()方法来取得Asp.Net根目录的物理路径,如下所示: // Classi ...

  9. 在HTML页面中获取当前项目根路径的方法

    在HTML页面获取项目根路径的方法: function getRootPath(){ var curPageUrl = window.document.location.href; var rootP ...

随机推荐

  1. [ Linux ] 设置服务器开机自启端口

    https://www.cnblogs.com/yeungchie/ 需要用到的工具: crontab iptables crontab.set SHELL=/bin/bash PATH=/sbin: ...

  2. js知识梳理5:关于函数的要点梳理(1)

    写在前面 注:这个系列是本人对js知识的一些梳理,其中不少内容来自书籍:Javascript高级程序设计第三版和JavaScript权威指南第六版,感谢它们的作者和译者.有发现什么问题的,欢迎留言指出 ...

  3. jni有关知识点总结

    一.c/c++语言: 1.关于动态链接库的搜索问题: LIBRARY_PATH is used by gcc before compilation to search for directories ...

  4. Spring-Mybatis使用到的依赖及配置

    日志(log4j) log4j.rootLogger=DEBUG,console,file log4j.appender.console = org.apache.log4j.ConsoleAppen ...

  5. Metalama简介3.自定义.NET项目中的代码分析

    本系列其它文章 使用基于Roslyn的编译时AOP框架来解决.NET项目的代码复用问题 Metalama简介1. 不止是一个.NET跨平台的编译时AOP框架 Metalama简介2.利用Aspect在 ...

  6. ubuntu16.04安装MATLAB R2017b步骤详解(附完整文件包)

    摘要:介绍在ubuntu16.04中从下载到安装成功的完整步骤.本文给出MATLAB R2017b(Linux系统)的完整安装包百度云盘下载地址,逐步介绍一种简单易行的安装方法,在桌面创建快捷方式,最 ...

  7. 基于Feature Flag的下一代开发模式

    渐进式发布(Progressive Delivery)被认为是持续发布(Continous Delivery)的下一代形态,其专注于增强发布过程控制与降低发布风险,最终提高整体收益.国际科技巨头比如A ...

  8. 深度优先搜索 DFS 学习笔记

    深度优先搜索 学习笔记 引入 深度优先搜索 DFS 是图论中最基础,最重要的算法之一.DFS 是一种盲目搜寻法,也就是在每个点 \(u\) 上,任选一条边 DFS,直到回溯到 \(u\) 时才选择别的 ...

  9. Go单体服务开发最佳实践

    单体最佳实践的由来 对于很多初创公司来说,业务的早期我们更应该关注于业务价值的交付,并且此时用户体量也很小,QPS 也非常低,我们应该使用更简单的技术架构来加速业务价值的交付,此时单体的优势就体现出来 ...

  10. 源码解析Synchronous Queue 这种特立独行的队列

    摘要:Synchronous Queue 是一种特立独行的队列,其本身是没有容量的,比如调用者放一个数据到队列中,调用者是不能够立马返回的,调用者必须等待别人把我放进去的数据消费掉了,才能够返回. 本 ...