博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#学习笔记(十三):I/O操作
阅读量:4589 次
发布时间:2019-06-09

本文共 1704 字,大约阅读时间需要 5 分钟。

C#的IO操作主要是针对文件夹和文件的读取和写入操作,下面我们来学习一下相关操作的类。

获取文件信息

Directory和DirectoryInfo

两个类的功能基本相同,区别如下:

  1. 前者继承System.Object,后者继承抽象类FileSystemInfo;
  2. 前者是静态类,后者是非静态类,需要new创建实例;
  3. 前者返回的类型是简单字符串,后者返回的是强类型如FileInfo;

File和FileInfo

区别和Directory一致,下面给出帮助文档,具体的使用方法可以查看帮助:

读取文件

下面给出一个简单的读取文件的例子:

1 using System; 2 using System.IO; 3  4 namespace Study 5 { 6     class Program 7     { 8         static void Main(string[] args) 9         {10             if (!File.Exists("test.txt"))11             {12                 Console.WriteLine("文件不存在!");13                 Console.Read();14                 return;15             }16 17             using (StreamReader streamReader = File.OpenText("test.txt"))18             {19                 string line;20                 while ((line = streamReader.ReadLine()) != null)21                 {22                     Console.WriteLine(line);23                 }24                 streamReader.Close();25             }26 27             Console.Read();28         }29     }30 }

写入文件

下面给出一个简单的写入文件的例子:

1 using System; 2 using System.IO; 3  4 namespace Study 5 { 6     class Program 7     { 8         static void Main(string[] args) 9         {10             using (FileStream fileStream = File.Open("test.txt", FileMode.OpenOrCreate))11             {12                 TextWriter textWriter = new StreamWriter(fileStream);13                 textWriter.WriteLine("Hello Li Lei,");14                 textWriter.WriteLine("I`m Han Meimei.");15                 textWriter.Flush();16 17                 fileStream.Close();18             }19 20             Console.Read();21         }22     }23 }

FileHelper

为了简化文件的读写操作,我写了一个工具类放到我的开源工程下,有需要得朋友可以直接使用:

转载于:https://www.cnblogs.com/hammerc/p/4616263.html

你可能感兴趣的文章
maven学习(下)利用Profile构建不同环境的部署包
查看>>
win8自带输入法如何切换全角、半角操作流程
查看>>
TensorFlow windows 安装(base anaconda)
查看>>
Percona XtraDB Cluster集群
查看>>
mybatis学习笔记1--HelloMybatis
查看>>
正则表达式全局匹配网址
查看>>
js多张图片合成一张图,canvas(海报图,将二维码和背景图合并) -----vue
查看>>
前端页面刷新与跳转
查看>>
笔记本链接公司内网(跨网段) ,然后保证wifi
查看>>
Httpd做应用代理
查看>>
如何用Jmter生成合法的手机号
查看>>
Jmeter生成正常的人名
查看>>
Jmeter 做压力测试步骤
查看>>
jmeter生成随机的四位数
查看>>
Jmeter做接口的压力测试
查看>>
sql语句优化的30种方法
查看>>
MyISAM和InnoDB的区别
查看>>
springboot2.0 management.security.enabled无效
查看>>
spring cloud启动zipkin,报错maven依赖jar包冲突 Class path contains multiple SLF4J bindings
查看>>
源发行版8需要目标发行版1.8
查看>>