如何获取配置文件的路径

http://stackoverflow.com/questions/793657/how-to-find-path-of-active-app-config-fil

第一个回答:

Try this

AppDomain.CurrentDomain.SetupInformation.ConfigurationFile

Hope it helps

第二个回答:

Strictly speaking, there is no single configuration file. Excluding ASP.NET1 there can be three configuration files using the inbuilt (System.Configuration) support. In addition to the machine config: app.exe.config, user roaming, and user local.

To get the "global" configuration (exe.config):

ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None)
                    .FilePath

Use different ConfigurationUserLevel values for per-use roaming and non-roaming configuration files.

Examples

                Console.WriteLine($"AppDomain.CurrentDomain.SetupInformation.ConfigurationFile = {AppDomain.CurrentDomain.SetupInformation.ConfigurationFile}");
                Console.WriteLine();

                var configFile = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                Console.WriteLine($"ConfigurationUserLevel.None = {configFile.FilePath}");
                Console.WriteLine();
                configFile = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoaming);
                Console.WriteLine($"ConfigurationUserLevel.PerUserRoaming = {configFile.FilePath}");
                Console.WriteLine();

                configFile = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
                Console.WriteLine($"ConfigurationUserLevel.PerUserRoamingAndLocal = {configFile.FilePath}");
                Console.WriteLine();

exe文件所处路径  d/SourceCode/CSharp/ConsoleTest/ConsoleApplication1/bin/Debug

输出结果如下:

AppDomain.CurrentDomain.SetupInformation.ConfigurationFile = D:\SourceCode\CSharp\ConsoleTest\ConsoleApplication1\bin\Debug\ConsoleApp.exe.Config

ConfigurationUserLevel.None =                                                  D:\SourceCode\CSharp\ConsoleTest\ConsoleApplication1\bin\Debug\ConsoleApp.exe.Config

ConfigurationUserLevel.PerUserRoaming = C:\Users\Administrator\AppData\Roaming\ChuckLu\ConsoleApp.exe_Url_3lsb0kxaaocmfdaqj3ouxzvvp3phypxi\1.0.0.0\user.config

ConfigurationUserLevel.PerUserRoamingAndLocal = C:\Users\Administrator\AppData\Local\ChuckLu\ConsoleApp.exe_Url_3lsb0kxaaocmfdaqj3ouxzvvp3phypxi\1.0.0.0\user.config

AppDomain.CurrentDomain.SetupInformation.ConfigurationFile和ConfigurationUserLevel.None  的路径是一致的

时间: 2024-10-06 11:26:52

如何获取配置文件的路径的相关文章

项目打jar包后无法获取配置文件的路径问题

项目打jar包后无法获取配置文件的路径问题 今天在开发中做一个java项目,要求读取配置文件中的信息,当项目打jar包以后就找不到配置文件了,问题最后解决了,拿出来跟大家分享一下. 方式一:getResource(这种方式在war包好用,在jar包不好用): public static void main(String[] args) { String path=App.class.getClassLoader().getResource("config.properties").ge

Java获取配置文件跟路径

一直以为使用new File(相对路径)可以读取class目录下的文件,其实不然.网上查询了一些资料,弄清楚了原理,总结如下: package com.coshaho.learn; import java.io.BufferedReader; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; public class File

解决项目打jar包后无法获取配置文件的路径问题

今天在开发中做一个java项目,要求读取配置文件中的信息,开始一直写成绝对路径,当项目打jar包以后就找不到配置文件了,后面在网上当了一个方法,问题最后解决了,拿出来跟大家分享一下. public class SMBConfig {//SMB消息参数public static String SMB_SENDER = ""; //Smb消息发送方public static String SMB_EXCHANGE = ""; //Smb消息组public static

SWIFT中获取配置文件路径的方法

在项目中有时候要添加一些配置文件然后在程序中读取相应的配置信息,以下为本人整理的获取项目配置文件(.plist)路径的方法: 1.获取沙盒路径后再APPEND配置文件 func documentsDirectory() ->String { var paths = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentationDirectory, NSSearchPathDomainMask.UserDomainMa

ClassLoader.getResourceAsStream(name); 获取配置文件的方法

ClassLoader.getResourceAsStream(name);路径问题 InputStream in = getClass().getResourceAsStream('/'+"spring-beans.dtd"); 表示从classs目录下面的找文件,文件放在src下面就可以了.InputStream in = getClass().getResourceAsStream("spring-beans.dtd"); 表示从当前classs下面的路径找文

C#: 获取执行程序所在路径和启动资源管理器

一. 获取执行程序所在路径 1.获取和设置当前目录的完全限定路径. string str = System.Environment.CurrentDirectory; Result: C:\xxx\xxx 2.获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称. string str = System.Windows.Forms.Application.StartupPath; Result: C:\xxx\xxx 3.获取新的 Process 组件并将其与当前活动的进程关联的主模块的

class.getClassLoader().getResourceAsStream(name)获取配置文件

最近做模拟登陆,需要加载一些配置文件,用到了class.getClassLoader().getResourceAsStream(name)方法来获取js文件数据流,读取相对路径文件一直是我苦恼的事情……在不断的百度百度中,终于有了一些结果. ClassLoader.getResourceAsStream()查找资源,是当前类编译为class文件后所在文件夹路径中查找,举例说明: 在PasswordUtil.java中调用md5.js文件获得密码加密结果(无用,可忽略) 编译class文件后存储

jsp和java获取文件或路径

1.如何获得当前文件路径常用:(1).Test.class.getResource("")得到的是当前类FileTest.class文件的URI目录.不包括自己!(2).Test.class.getResource("/")得到的是当前的classpath的绝对URI路径.(3).Thread.currentThread().getContextClassLoader().getResource("")得到的也是当前ClassPath的绝对URI

SpringBoot入门十 ,获取配置文件信息

SpringBoot获取配置文件的信息有很多,这里介绍比较常用的三种方式 默认获取的都是application.properties文件中的信息 1.application.properties配置文件内容如下: server.port=80 spring.mvc.view.prefix=/jsp/ spring.mvc.view.suffix=.jsp #中文需要转换成为ASCII码,否则取值的时候是乱码 #张三 demo.userName=\u5F20\u4E09 demo.userAge=