1. 读写文件的步骤:

创建一个文件流 -- 创建相应的读写器 -- 执行读写操作 -- 关闭读写器 -- 关闭文件流

创建一个文件流:   FileStream objfs = new FileStream(文件的路径 , 文件打开模式);

文件的打开模式: FileMode 是一个枚举值,此处略去

创建文件的同事也可以设置权限

创建读写器:  StreamReader objsr = new StreamReader(objfs, Encoding.UTF8);

StreamWriter objsw = new StreamWriter(objfs, Encoding.UTF8);

Enoding 是为了解决乱码问题

读写操作: 读: objsr.ReadToEnd();

写:objsw.Write(content);

关闭读写器:  objsr.Close();

objsw.Close();

关闭文件流:  objfs.Close();

 

2. File类

提供操作文件的各种方法。

方法

说明

bool  Exists(string path)

用于检查指定文件是否存在,该方法返回一个布尔值

void  Copy(string 

    sourceFileName,
    string destFileName)

将指定路径的源文件中的内容复制到目标文件中,如果目标文件不存在,则在指定路径中新建一个文件

void  Move (string

    sourceFileName,
    string destFileName)

将指定文件移动到一个新的路径

void  Delete(string path)

删除指定的文件,如果指定的文件不存在,则不引发异常

3.  Directory 类提供对文件夹的移动、删除等操作

方法

说明

bool  Exists(string path)

用于检查指定文件夹在磁盘上是否存在

void  Move(string

    sourceDirName,

    string destDirName)

用于将文件或目录及其内容移到新位置

void  Delete(string path,

    bool recursive)

删除指定目录,如果bool指定true,则删除子目录中的所有目录内容

void  Delete(string path)

从指定路径删除空目录

3.  FileInfo类

由于File类的静态方法在使用时都会进行安全检查,所以如果想要多次使用某个文件对象,可以考虑使用FileInfo类相应的实例方法,因为并不总是需要安全检查

属性/方法

说明

Exists

用于检查指定文件是否存在,返回一个布尔值

Extension

获取表示文件扩展名部分的字符串

Name

获取文件名

FullName

获取目录或文件的完整目录

FileInfo  CopyTo(string)

将现有文件复制到新文件,不允许覆盖现有文件

void  Delete()

永久删除文件

void  MoveTo(string)

将指定文件移到新位置

4. DirectoryInfo类

如果打算多次重用某个目录对象,可以考虑使用DirectoryInfo类的实例方法

方法

说明

DirectoryInfo[ ]  GetDirectories()

返回当前目录的子目录对象数组

FileInfo[ ]  GetFiles()

返回当前目录下文件列表(FileInfo对象数组)

备注:文件(file)与流(stream)

文件,是在各种媒介上永久存储的数据的有序集合,它是一种进行数据读写操作的基本对象。

流,从概念上讲,非常类似于单独的磁盘文件,它也是进行数据读取操作的基本对象,流为我们提供了连续的字节流存储空间。

File类,是一个静态类,主要是来提供一些函数库用的。

静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和打开一个文件。

转载于:https://www.cnblogs.com/Theladyflower/p/3997298.html

C# 文件读取(一)相关推荐

  1. c++文件读取空格_程序员术与道:术—C语言对文件进行处理,文件处理的基本操作...

    各种编程语言都实现了文件的基本操作,提供了对应的接口,本篇文章先为你介绍C语言对文件进行处理和文件处理的基本操作.主要从以下几个方面进行介绍: 读取文件 写入文件 重命名文件 读取目录 读取目录下的文 ...

  2. Java CSV文件读取、写入及追加

    Java CSV文件读取.写入及追加 https://blog.csdn.net/liq816/article/details/81286472 追加: FileOutputStream out = ...

  3. 【Unity_UWP】Unity 工程发布win10 UWP 时的本地文件读取 (上篇)

    Universal Windows Platform(UWP)是微软Windows10专用的通用应用平台,其目的在于在统一操作系统下控制所有智能电子设备. 自从Unity 5.2之后,配合VS 201 ...

  4. 编程模板-R语言脚本写作:最简单的统计与绘图,包安装、命令行参数解析、文件读取、表格和矢量图输出

    写在前面 个人认为:是否能熟悉使用Shell(项目流程搭建)+R(数据统计与可视化)+Perl/Python等(胶水语言,数据格式转换,软件间衔接)三门语言是一位合格生物信息工程师的标准. 之前分享过 ...

  5. springboot~openfeign从JSON文件读取数据

    对openfeign不清楚的同学可以先看我这篇文章:springboot~openfeign从此和httpClient说再见 对于openfeign来说,帮助我们解决了服务端调用服务端的问题,你不需要 ...

  6. .net精简框架集下的ini文件读取(C#)

    无论是.net框架集还是.net精简框架集都能非常完美的支持XML文件,并且微软也强烈建议用xml文件取代ini文件,但是在工控领域大部分的工程都是采用ini文件配置的系统信息的. 以前的隧道管理系统 ...

  7. pandas中dataframe的构造(csv等结构化文件读取,字典读取)以及保存

    文章目录 前言 结构化文件读取 字典读取 numpy读取 保存dataframe 前言 pandas用来读取数据十分之方便和快速,可以提高你的效率,虽然numpy也有一些读取数据的api,但是通常我们 ...

  8. c#大文件读取和写入数据库

    c#大文件读取和写入数据库(带进度条的源代码) 最近一个项目需要将大文件写入和读取到数据库,觉得可能很多人也需要相关得东西,所以就将代码帖出来 protected int state = 0; //表 ...

  9. Spark的RDD 文件读取与保存

    RDD 文件读取与保存 Spark 的数据读取及数据保存可以从两个维度来作区分:文件格式以及文件系统.其中: (1)文件格式分为:text 文件.csv 文件.sequence 文件以及Object ...

  10. hadoop定位文件读取

    hadoop定位文件读取 需求说明: 上传文件 分块下载 查看 需求说明: 分块读取HDFS上的大文件,比如根目录下的/hadoop-2.7.2.tar.gz 上传文件 [xzc@hadoop102 ...

最新文章

  1. 蓝鸥Unity开发基础二——课时20 接口
  2. 使用Spring-AOP
  3. 【网址收藏】Spark History Server配置及使用
  4. Chrome每次打开时报的关于扩展程序的警告信息
  5. C#使用ServiceController控制windows服务
  6. 分计算iv值_筛选变量的指标—IV值
  7. stm32 lwip 如何发送不出_mbedtls | 移植mbedtls库到STM32裸机的两种方法
  8. 【java】线程 ExecutorService 原理 源码 解释
  9. 塞班、libc.lib、系统错误-1、KErrNotFound、内嵌sis、embedded sis
  10. 不要让SOA控制我们的思想
  11. 实锤了!Chrome存在严重漏洞!
  12. 爬取嘉兴市人才网即时招聘信息并写入文本TXT完整案例
  13. eyoucms使用入门 四
  14. Linux系统的安装与配置
  15. TYVJ-P1035 棋盘覆盖
  16. cpolar:一款好用的内网穿透工具 - 无需公网IP
  17. 等待任务执行完成时,界面上转圈圈,不让用户操作软件
  18. Vue el-input 使用伪元素插入间隔符
  19. phpstorm安装jquery插件库
  20. 处理.Dwg文件用哪种技术方案?ObjectARX,RealDWG还是Teigha(ODA)?

热门文章

  1. oracle 频繁 tm tx,oracle频繁出现TX/TM锁问题
  2. webdriver原理_(最新版)如何正确移除 Pyppeteer 中的window.navigator.webdriver
  3. python月球地球质量计算_我们如何计算一个行星的质量?
  4. springmvc项目在启动完成之后执行一次方法_SpringMVC源码分析
  5. linux 内核 网卡驱动 移植,linux内核移植步骤添加dm9000网卡驱动(设备树).docx
  6. 这台计算机没有连接到网络怎么办,如果计算机连接到路由器并且没有互联网,该怎么办...
  7. 解决ubuntu下不能mount windows 盘的问题
  8. 建立一个端口为8189的服务器,它无限期等待直到有客户连接这个端口。若客户在网上发送正确的请求连接了这个端口,则服务器与客户之间就建立了一个可靠的连接。
  9. android获取网络视频缩略图,Android 获取视频(本地和网络)缩略图的解决方案
  10. 如何利用用户业务行为画像,做套餐与用户之间个性化智能匹配模型?