C# Note5:使用相对路径读取文件
一、C#中使用相对路径读取配置文件
一般Solution的目录结构如下图所示:
(如过看不到某些文件,可以点击 “显示所有文件” 图标)
方法一:由于生成的exe文件在bin\debug目录下,可以使用向上查找目录的方式获取要读取的xml文件
string tPath = @"../../Converts/XMLFile1.xml";
FileInfo file = new FileInfo(fileName);
string fullName = file.FullName;
注:使用@的意思是不转义/
方法二:获取exe文件的路径进行截取,分两次进行,然后拼接文件名,形成全路径
string tPath = @"XMLFile1.xml";
string fullName = Application.StartupPath.Substring(, Application.StartupPath.LastIndexOf("\\"));
fullName = fullName.Substring(, fullName.LastIndexOf("\\")) + "\\" + tPath;
方法三:
/// <summary>
/// 获取应用程序根路径
/// </summary>
private static string GetApplicationPath()
{
string path = Application.StartupPath;
//string path=AppDomain.CurrentDomain.BaseDirectory; //另一种获取方式
string folderName = String.Empty;
while (folderName.ToLower() != "bin")
{
path = path.Substring(, path.LastIndexOf("\\"));
folderName = path.Substring(path.LastIndexOf("\\") + );
}
return path.Substring(, path.LastIndexOf("\\") + );
}
C# Note5:使用相对路径读取文件的更多相关文章
- java 使用相对路径读取文件
java 使用相对路径读取文件 1.java project环境,使用java.io用相对路径读取文件的例子: *目录结构: DecisionTree |___src ...
- Java FileReader使用相对路径读取文件
Java FileReader使用相对路径读取文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 在进行编程时需要时常更换主机进行测试,如果使用绝对路径则需要经常更改,为此使用相对路径是一个 ...
- Java相对路径读取文件
不管你是新手还是老鸟,在程序中读取资源文件总会遇到一些找不到文件的问题,这与Java底层的实现有关,不能算bug,只要方法得当,问题还是可以解决的. 项目的文件夹结构: repathtest ├─sr ...
- C#中winform使用相对路径读取文件的方法
http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece763105392230e54f73b6cd0d3027fa3cf1fd579080101 ...
- java中使用相对路径读取文件的写法总结 ,以及getResourceAsStream() (转)
https://blog.csdn.net/my__sun_/article/details/74450241 读取文件的写法,相对路径 在当前的目录结构中读取test.txt的有四种写法 简单粗暴的 ...
- hook mono实现Assembly.Load从指定路径读取文件
mono-unity github: https://github.com/Unity-Technologies/mono/blob/unity-staging/mono/metadata/assem ...
- C++实现根据路径读取文件内容
已知文件路径,用C++实现读取对应文件的内容,代码如下: bool LoadShaderStr(const char* szShaderPath,string& strShaderStr) { ...
- web项目中从不同的路径读取文件
项目中的配置文件可以放在classpath下,webapp下获取其他任何一个指定的绝对地址,读取这些文件就从这三个地方去找.主要代码如下: private List<String> get ...
- winform使用相对路径读取文件的方法
获取exe文件的路径进行截取,分两次进行,然后拼接文件名,形成全路径 代码如下: string haarXmlPath = @"haarcascade_frontalface_alt_tre ...
随机推荐
- php面试题整理(四)
应该是group by username }
- Centos 7 安装JAVA环境 jdk1.8
在Linux环境(Centos 7)安装jdk1.8,有以下两种方式 方式一.安装openjdk # yum install java-1.8.0-openjdk* -y 方式二.使用wget下载 ...
- WINDOWS下nginx实现本地支持的图片服务器反向代理
最近在学习nginx的反向代理和负载均衡的运用时,觉得挺简单的,但是还是想写一篇博客用于记录自己的学习过程. 好的,我们进入正题 Nginx(engine x) 是一个高性能的HTTP和反向代理服务器 ...
- jira8.0.2安装与破解
环境: centos7.4 java1.8 jira版本:8.0.2 mysql :mariadb 软件下载: 破解包: atlassian-extras-3.2.jar 连接mysql驱动: mys ...
- Memcache分布式锁 转发 https://www.cnblogs.com/li150dan/p/9529090.html
在分布式缓存的应用中,会遇到多个客户端同时争用的问题.这个时候,需要用到分布式锁,得到锁的客户端才有操作权限 下面通过一个简单例子介绍: 这里引用的是Memcached.ClientLibrary.d ...
- truffle框架的简单使用
truffle 给大家介绍一下这个框架怎么使用,其实把这个框架就是你们看我之前有一个教程是教你们怎么用remix-ide来连接私有链,编译,配置合约,然后进行调用的,truffle其实就是把这个步骤放 ...
- Spring Security(八):2.4.3 Project Modules
In Spring Security 3.0, the codebase has been sub-divided into separate jars which more clearly sepa ...
- jQuery和js之Cookie实现
Web开发者的朋友们基本上都知道,jQuery是对js的封装.今天之所以想讲解这个问题,主要是因为Cookie用的还是比较多,应用场景除了老生常谈的购物车,还有就是用户状态(以我之前开发的一个项目除了 ...
- Spring整合ActiveMQ及多个Queue消息监听的配置
消息队列(MQ)越来越火,在java开发的项目也属于比较常见的技术,MQ的相关使用也成java开发人员必备的技能.笔者公司采用的MQ是ActiveMQ,且消息都是用的点对点的模式.本文记录了实 ...
- 简单的自定义ViewGroup
自定义ViewGroup需要重写onMeasure, onLayout等方法.下面是一个实例,4个View分别显示在四个角. public class MyGroup extends ViewGrou ...