读写文本文件

  使用C#读写文本文件需要5个步骤:

    1.创建文件流

    2.创建阅读器或者写入器

    3.执行读写操作

    4.关闭阅读器或者写入器

    5.关闭文件流

  例

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO; //引入命名空间 namespace Demo
{
class Program
{
static void Main(string[] args)
{
//创建文件流
FileStream stream = new FileStream("filePath", FileMode.Create);
//创建写入器
StreamWriter writer = new StreamWriter(stream);
//写入内容
writer.Write("写入");
//关闭写入器
writer.Close();
//关闭文件流
stream.Close();
}
}
}

  其中FileStream中的FileMode指的是打开文件的模式,可以根据字面意思来理解,Create就是创建一个文件。

  读取文件只是将StreamWriter换成StreamReader。其他的都可以按照文字变成英语来替换。

  创建StreamWriter一般有两个参数,一个是FileStream对象,一个是Encoding字符编码,常用的是Default。解决乱码问题。

文件操作

  File类:(静态)

      Exists(string path)用于检查指定文件是否存在,有返回值,bool类型。

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

      Move(string sourceFilePath,string destinationFilePath)将指定文件移到一个新的路径。

      Delete(string path)删除指定的文件,如果指定的文件不存在,则不引发异常。

  FileInfo类:(实例)

      属性:

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

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

          Name:获取文件名。

          FullName:获取目录或文件的完整目录。

      方法:

          CopyTo(string)将现有文件复制到新文件,不允许覆盖现有文件。

          Delete()永久删除文件。

          MoveTo(string)将指定文件移到新位置(string)。

文件夹操作

  Directory类:(静态)

      Exists(string path)用于检查指定文件夹在磁盘上是否存在。

      Move(string sourceDirName,string destDirName)用于将文件或目录及其内容移到新位置。

      Delete(string path,bool recursive)删除指定目录,如果recursive值为true,则删除子目录中的所有的目录内容。

  DirectoryInfo类:(实例)

      方法与Directory类的方法一致。

      GetDirectories():返回当前目录的子目录对象数组,Directory类也有这个方法,但返回值是当前目录的子目录的名称数组。

      GetFiles():该方法返回当前目录下的文件列表(FileInfo对象数组)。Directory类也有这个方法,但返回值是指定目录下的文件名数组。

使用静态方法和实例方法操作文件的区别

  使用静态方法时每次都会进行安全检查,如果想要多次使用某个文件对象,可以使用实例方法,不必每次都进行安全检查。

使用C#操作文件的更多相关文章

  1. 虚拟机出现“操作文件.PhysicalDrive1失败”的解决方法

    今天打算利用U盘给虚拟机装系统做实验,中途遇到了"操作文件.PhysicalDrive1失败"的错误,试了网上的方法都没有成功,最后自己试了很久总算弄出来了.鉴于本人的基础水平有限 ...

  2. 【Python】[IO编程]文件读写,StringIO和BytesIO,操作文件和目录,序列化

    IO在计算机中指Input/Output,也就是输入和输出. 1.文件读写,1,读文件[使用Python内置函数,open,传入文件名标示符] >>> f = open('/User ...

  3. python基础知识---操作文件

    一.打开文件  open()函数 open函数返回一个文件对象. 用法:open('文件名','模式') 打开文件的模式有: r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内 ...

  4. 操作文件方法简单总结(File,Directory,StreamReader,StreamWrite )

    对于文件夹,文档的操作一直处于一知半解状态,有时间闲下来了,好好练习了一把,对文档,文件的操作有了一个基本的认知, 若要深入了解,还是得通过实际的项目才行了,好了废话不多说,上酸菜!! 注:红色标题为 ...

  5. C#操作文件夹及文件的方法的使用

    本文收集了目前最为常用的C#经典操作文件的方法,具体内容如下:C#追加.拷贝.删除.移动文件.创建目录.递归删除文件夹及文件.指定文件夹下面的所有内容copy到目标文件夹下面.指定文件夹下面的所有内容 ...

  6. python读写操作文件

    with open(xxx,'r,coding='utf-8') as f:   #打开文件赋值给F ,并且执行完了之后不需要 f.close(). 在Python 2.7 及以后,with又支持同时 ...

  7. javaScript中利用ActiveXObject来创建FileSystemObject操作文件

    注:如果用javascript读本地文件,遇到安全问题. 需在浏览器中进行设置,如下:     工具—> Internet选项->安全->自定义级别->启用“没有标识为安全的A ...

  8. Python操作文件、文件夹、字符串

    Python 字符串操作 去空格及特殊符号 s.strip().lstrip().rstrip(',') 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sSt ...

  9. golang操作文件的四种方法

    golang追加内容到文件末尾 字数349 阅读54 评论0 喜欢2 golang读写文件,网上很多教程了但是今天有个需求,想要把内容追加写到文件末尾google了好久,没有查到研究了一会儿file库 ...

  10. .net(C#)操作文件的几种方法汇总

    .net(C#)操作文件的几种方法汇总 System.IO命名空间下类的用法:在System.IO名称空间中包含了用于文件输入输出的主要类.File:实用类,提供许多静态方法,用于移动.复制和删除文件 ...

随机推荐

  1. 实现微信浏览器自动播放MP3音乐

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  2. BNU Online Judge-34978-汉诺塔

    题目链接 http://www.bnuoj.com/bnuoj/problem_show.php?pid=34978 这题在比赛时AC了不过那时是根据测试数据  抱着来试一下的想法,没想就AC了,其实 ...

  3. 国产数据库-KingbaseES在linux下的安装

    将KingbaseES软件从windows中传至Linux中并解压 [root@localhost ~]# ls anaconda-ks.cfg  install.log.syslog Desktop ...

  4. Java NIO------基础理论之缓存区

    1.概述:NIO我的理解就是 New IO,是API1.4里提供的新的API,为所有的原始类型做缓存支持. NIO主要的核心组成部分: Buffer(缓存) Channels(通道) Selector ...

  5. 如何在鼠标hover时改变标注的样式

    如何在鼠标hover时改变标注的样式? ----------------    教程   ----------------------- 首先创建1张地图 //初始化地图对象,加载地图 var map ...

  6. 实现一个类 Vue 的 MVVM 框架

    Vue 一个 MVVM 框架.一个响应式的组件系统,通过把页面抽象成一个个组件来增加复用性.降低复杂性 主要特色就是数据操纵视图变化,一旦数据变化自动更新所有关联组件~ 所以它的一大特性就是一个数据响 ...

  7. [原创]Hadoop-2.5.2-HA原文译

    使用the Quorum Journal Manager实现HDFS高可用 2017/1/22 11:57:22 原文 目的(Purpose) * 这个指南提供了对HDFS-HA特性,使用QJM特性如 ...

  8. JDK1.8源码阅读系列之三:Vector

    本篇随笔主要描述的是我阅读 Vector 源码期间的对于 Vector 的一些实现上的个人理解,用于个人备忘,有不对的地方,请指出- 先来看一下 Vector 的继承图: 可以看出,Vector 的直 ...

  9. WdatePicker 日历控件使用方法+基本常用方法

    WdatePicker 日历控件使用方法+基本常用方法,记录一下. 很好的文章. 网上转来的. 1. 跨无限级框架显示 无论你把日期控件放在哪里,你都不需要担心会被外层的iframe所遮挡进而影响客户 ...

  10. .Net程序员学用Oracle系列(11):系统函数(下)

    1.聚合函数 1.1.COUNT 函数 1.2.SUM 函数 1.3.MAX 函数 1.4.MIN 函数 1.5.AVG 函数 2.ROWNUM 函数 2.1.ROWNUM 函数简介 2.2.利用 R ...