黑马程序员—文件读取路径及行读取的方式,今晚总算有点小懂
ASP.Net+Android+IO开发S、.Net培训、期待与您交流
以前文件读取总是一知半解,每次使用时都是这错拿错,代码每次写到一半就要去翻资料。今天自己来好好总结一下。第一个不明白的方就是文件路径了,编程时唱设为path。
string path = Path.GetFullPath("wages.txt");
FileStream fs = new FileStream(path, FileMode.Open);
StreamReader sr = new StreamReader(fs, Encoding.Default);
List<string> email = new List<string>();
string line = sr.ReadLine();
Console.WriteLine(line);
line = sr.ReadLine();
while (line != null)
{
Console.WriteLine(line);
string[] content = line.Split('|');
email.Add(content[1]);
line = sr.ReadLine();
}
sr.Close();
fs.Close();
foreach (string s in email)
{
Console.WriteLine(s);
}
Console.ReadKey();、
C#获取当前路径的方法如下:
1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
-获取模块的完整路径。
2. System.Environment.CurrentDirectory
-获取和设置当前目录(该进程从中启动的目录)的完全限定目录。
3. System.IO.Directory.GetCurrentDirectory()
-获取应用程序的当前工作目录。这个不一定是程序从中启动的目录啊,有可能程序放在C:\www里,这个函数有可能返回C:\Documents and Settings\ZYB\,或者C:\Program Files\Adobe\,有时不一定返回什么东东,我也搞不懂了。
4. System.AppDomain.CurrentDomain.BaseDirectory
-获取程序的基目录。
5. System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase
-获取和设置包括该应用程序的目录的名称。
6. System.Windows.Forms.Application.StartupPath
-获取启动了应用程序的可执行文件的路径。效果和2、5一样。只是5返回的字符串后面多了一个"\"而已
7. System.Windows.Forms.Application.ExecutablePath
-获取启动了应用程序的可执行文件的路径及文件名,效果和1一样。
对于Windows程序和Web 应用程序来说,他们运行的路径是不一样的,所以关键是判断当前运行的程序是哪种程序.于是我们可以使用如下的代码
string path = ""; if (System.Environment.CurrentDirectory == AppDomain.CurrentDomain.BaseDirectory)//Windows应用程序则相等 ...{ path = AppDomain.CurrentDomain.BaseDirectory; } else ...{ path = AppDomain.CurrentDomain.BaseDirectory + "Bin\"; } 这样如果我们写了一个类库,类库中用到了Assembly.LoadFrom,由于是通用类库,所以可能用到Windows程序中也可能用到Web中,那么用上面的代码就很方便了.
1、Server.MapPath
2、System.Windows.Forms.StartupPath
3、Type.Assembly.Location
C#获取当前路径方法2可以应用于控制台应用程序,WinForm应用程序,Windows服务,方法1可以应用于Web应用程序,方法3都可以应用。
但方法3是加载应用程序的路径。如果是Web应用程序,取得的路径是:C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files目录。所以Web项目还是使用Server.MapPath吧。否则建议使用方法2。如果自己新建类库。可以加入对System.Windows.Forms.StartupPath的引用后使用。
路径总算弄明白了。。。
ASP.Net+Android+IOS开发、.Net培训、期待与您交流!详细请查看:http://edu.csdn.net
转载于:https://www.cnblogs.com/dinghaiping/p/3278815.html
黑马程序员—文件读取路径及行读取的方式,今晚总算有点小懂相关推荐
- 黑马程序员python
第一阶段 第二章 04-数据类型 type():查看数据的类型 # 方式1:使用print直接输出类型信息 print(type("黑马程序员")) print(type(666) ...
- 黑马程序员:福利来袭!网络安全斗鱼直播“录像+资源”大放送
不知大家是否知道,就在上周五(8月5日),黑马程序员C++学院资深讲师冰哥和知名美女老师码小趣,为大家带来了一场关于网络安全的直播盛宴! 关于直播内容如下: 一.科普网络安全知识,手把手教大家怎么 ...
- logback的xml文件,b站黑马程序员
为了方便大家,logback.xml可以用,b站的黑马程序员` 自己改一下file和fileNamePattern的路径即可 <?xml version="1.0" enco ...
- 黑马程序员入学Java知识——精华总结
黑马程序员入学Java知识--精华总结 J2SE部分,Java高新技术部分,7K面试题部分等黑马入学要求的知识点总结! 一.黑马程序员-java概述与基础知识 6 1.何为编程? 6 2.Java语言 ...
- 《Android移动应用基础教程》(Android Studio)(第二版)黑马程序员 课后习题答案
<Android移动应用基础教程>(Android Studio)(第二版)黑马程序员 课后习题答案 目录 第1章 Android基础入门 第2章 Android常见界面布局 第3章 An ...
- 黑马程序员C++笔记
C++ 课程链接: 黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难_哔哩哔哩_bilibili 一.C++基础语法 1.变量和常量数据 1.1第一个C++程序 编写一个C++程序总共分 ...
- [学习笔记]黑马程序员-Hadoop入门视频教程
文章目录 参考资料 第一章:大数据导论与Linux基础(p1-p17) 1.1 大数据导论 1.1.1 企业数据分析方向 1.1.2 数据分析基本流程步骤 明确分析的目的和思路 数据收集 数据处理 数 ...
- 黑马程序员_MongoDB笔记
根据黑马程序员的课程资料整理所得,仅用于学习使用,如有侵权,请联系删除 1.MongoDB简单介绍 1.1 MongoDB应用场景 应对三高需求 High performance - 对数据库高并发读 ...
- 跟着黑马程序员pink老师学习的笔记及小破站学习的笔记
网页 1.网站是指在因特网上根据一定的规则,使用HTML等制作的用于展示特定内容相关的网页集合 2.什么是网页? 网页是网站中的一"页",通常是HTML格式的文件,它要通过浏览器来 ...
最新文章
- 关于JS点击button之灵活替换改变内容方法
- 外卖ERP管理系统(二)
- 隐马尔可夫(HMM)
- DL之Attention:Attention注意力机制的简介、应用领域之详细攻略
- webconfig中注册HttpHandler报错:检测到在集成的托管管道模式下不适用的 ASP.NET 设置。...
- Linux 系统应用编程——网络编程(socket编程)
- vscode,git提交push,需要每次都输入账号密码username,password
- 电脑唯一标识_什么是电脑网卡物理地址以及2种查询物理地址的方法?
- 服务器消息机制实现--记录
- 如何在word 里插入代码?
- 2022最新WiFi大师小程序3.0.9源码+独立版后台
- 怎么把PDF分割成几个文件?分享几种分割方法
- 极米Z7X对比当贝D5X区别 哪个值得买
- Stibo Systems(思迪博) 荣获数据质量卓越实践奖并获得CSTC权威鉴定
- web 前端签名插件_signature_pad插件实现电子签名功能
- php计算问卷分数,php 问卷调查结果统计
- H5外包团队:使用HTML5播放短视频代码分享
- 版本控制系统的集中式和分布式
- Docker容器实时日志查看器Dozzle
- 一文读懂大数据及大数据产业