1、 文件操作常用相关类

a)File              //操作文件,静态类,对文件整体操作。拷贝、删除、剪切等。

b)Directory        //操作目录(文件夹),静态类

c)DirectoryInfo    //文件夹的一个“类”,用来描述一个文件夹对象

d)FileInfo         //文件类,用来描述一个文件对象

e)Path            //对文件或目录的路径进行操作(很方便)【字符串】

f)Stream         //文件流,抽象类

FileStream  //文件流,MemoryStream(内存流),NetworkStream(网络流)

StreamReader         //快速读取文本文件

StreamWriter          //快速写入文本文件

2、 Path类(对字符串操作)

  a) 目录和文件操作的命名空间System.IO

b) string ChangeExtension(string path, string extension) (*)

  修改文件的后缀,“修改”支持字符串层面的,没有真的给文件改名

  string s = Path.ChangeExtension(@"C:\temp\F3.png", "jpg")

c) string Combine(string path1, string path2)

  将两个路径合成一个路径,比用+好,可以方便解决不加斜线的问题,自动处理路径分隔符的问题

  string s = Path.Combine(@"c:\temp","a.jpg")

d) string GetDirectoryName(string path) (*)

  得到文件的路径名。Path.GetDirectoryName(@"c:\temp\a.jpg")

     string GetExtension(string path) 得到文件的扩展名

     string GetFileName(string path) 得到文件路径的文件名部分

string GetFileNameWithoutExtension(string path) 得到去除扩展名的文件名

string GetFullPath(string path) 得到文件的全路径。可以根据相对路径获得绝对路径。

string GetTempFileName()  得到一个唯一的临时文件名(*)

string GetTempPath() 得到临时文件夹的路径(*)

补充:Path.GetFileName()获取文件名

3、 操作目录

Directory和DirectoryInfo

a)void Delete(string path, bool recursive)     删除目录

b)recursive表示是否递归删除,如果recursive为false则只能删除空目录

c)bool Exists(string path)      判断目录是否存在

move()

CreateDirectory()

string[] GetDirectories(string path)  得到一个目录下的子目录

string[] GetDirectories(string path, string searchPattern, SearchOption searchOption)    通配符查找目录下的子目录,可以搜索到隐藏文件。

static string[] GetFiles(string path)  得到一个目录下的文件

string[] GetFiles(string path, string searchPattern, SearchOption searchOption)   通配符查找目录下的文件

DirectoryInfo GetParent(string path)  得到目录的父目录

4、 File类的方法

a)File.Copy(“source”, “targetFileName”, true);//文件拷贝,true表示当文件存在时“覆盖”,如果不加true,则文件存在报异常。

b)File.Exists();//判断文件是否存在

c)File.Move(“source”, “target”);//移动(剪切),思考如何为文件重命名?

  C#里面,重命名文件时,没有 rename 这个功能,使用的是FileInfo.MoveTo的方式,MoveTo 到原目录里一个新的名字,即实现了重命名

d)File.Delete(“path”);//删除。如果文件不存在?不存在,不报错

e)File.Create(“path”);//创建文件

操作文本文件

a)File.ReadAllLines(“path”, Encoding.Default);//读取所有行,返回string[]

b)File.ReadAllText(“path”, Encoding.Default);//读取所有文本返回string

c)File.ReadAllBytes(“path”);//读取文件,返回byte[]

===================================

a)File.WriteAllLines(“path”, new string[4] ,Encoding.Default);//将b)string数组按行写入文件。

c)File.WriteAllText(“path”, “string”);//将字符串全部写入文件

d)File.WriteAllBytes(“path”,new byte[5]);//将byte[]全部写入到文件

e)File.AppendAllText()//将string追加到文件

File.Open(); //返回FileStream

File.OpenRead();//返回只读的FileStream

File.OpenWrite();//返回只写的FileStream

C#中的文件操作1的更多相关文章

  1. 第32课 Qt中的文件操作

    1. Qt的中IO操作 (1)Qt中IO操作的处理方式 ①Qt通过统一的接口简化了文件和外部设备的操作方式 ②Qt中的文件被看作一种特殊的外部设备 ③Qt中的文件操作与外部设备的操作相同 (2)IO操 ...

  2. 重新想象 Windows 8 Store Apps (24) - 文件系统: Application Data 中的文件操作, Package 中的文件操作, 可移动存储中的文件操作

    原文:重新想象 Windows 8 Store Apps (24) - 文件系统: Application Data 中的文件操作, Package 中的文件操作, 可移动存储中的文件操作 [源码下载 ...

  3. 背水一战 Windows 10 (91) - 文件系统: Application Data 中的文件操作, Application Data 中的“设置”操作, 通过 uri 引用 Application Data 中的媒体

    [源码下载] 背水一战 Windows 10 (91) - 文件系统: Application Data 中的文件操作, Application Data 中的“设置”操作, 通过 uri 引用 Ap ...

  4. 背水一战 Windows 10 (90) - 文件系统: 获取 Package 中的文件, 可移动存储中的文件操作, “库”管理

    [源码下载] 背水一战 Windows 10 (90) - 文件系统: 获取 Package 中的文件, 可移动存储中的文件操作, “库”管理 作者:webabcd 介绍背水一战 Windows 10 ...

  5. Java中的文件操作(一)RandomAccessFile

    今天,学到的是java中的文件操作. Java.IO.File Java中操作文件用到RandomAccessFile类,既可以读取文件内容,也可以向文件输出数据,但不同与普通输入/输出流的是Rand ...

  6. Win 32平台SDK中的文件操作

    读取文件: HANDLE hFile ; // 声明文件操作内核对象句柄 hFile = CreateFile(, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL ...

  7. ASP.NET中的文件操作(文件信息,新建,移动,复制,重命名,上传,遍历)(亲测详细)

    做了几天的文件操作,现在来总结一下,错误之处,还望指点!以文件为例,如果对文件夹操作,基本上将File换为Directory即可(例:FileInfo file = new FileInfo(Path ...

  8. 关于Python中的文件操作(转)

    总是记不住API.昨晚写的时候用到了这些,但是没记住,于是就索性整理一下吧: python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Pyth ...

  9. 说说Python 中的文件操作 和 目录操作

    我们知道,文件名.目录名和链接名都是用一个字符串作为其标识符的,但是给我们一个标识符,我们该如何确定它所指的到底是常规文件文件名.目录名还是链接名呢?这时,我们可以使用os.path模块提供的isfi ...

  10. C#中的文件操作

    在.NET Framework 中进行的所有输入和输出工作都要用到流(stream) 有两种类型的流: 输出流:当向某些外部目标写入数据时,就要用到输出流(将数据写入到文件中). 输入流:用于将数据读 ...

随机推荐

  1. 从.net复制源代码中国农历阵列,必要做日历

    从.net复制源代码中国农历阵列,必要做日历 const { 闰月的月份.春节的阳历日期(农历正月初一).农历的每一个月天数 } c_arrLunarInfo: array [1900 .. 2100 ...

  2. dd命令简单易用,例如

    dd命令简单易用,例如 bs单位,count为写入的范围区间,例如以下举例: 例:使用dd清除vote disk和ocr(裸设备)  $dd if=/dev/zero of=/dev/rrac_ocr ...

  3. WEB浏览器与服务器通讯过程

    以访问网页www.baidu.com为例,下面是使用Wireshark捕捉到的数据: 浏览器先发起一个TCP连接,然后发送GET报文给服务器,服务器之后返回一个Response报文. 从服务器端返回时 ...

  4. windows 7 telnet 开启关闭

    win7运行telnet提示:'telnet' 不是内部或外部命令,也不是可运行的程序或批处理文件 原因:win7默认没有打开此功能 解决方案:控制面板->程序和功能->打开或关闭wind ...

  5. /bin/bash^M: bad interpreter: No such file or directory

    <今天遇到的问题,  网上有非常多类似的文章,  个人记录下来,  加深记忆,  已经明确的就绕路吧.> 运行一个脚本full_build.sh 时, 一直是提示我: -bash: ./f ...

  6. ubuntu下java和tomcat安装配置

    oracle下载jdk-7u51-linux-i586.tar.gz sudo cp Downloads/jdk-7u51-linux-i586.tar.gz /usr/local/java //拷贝 ...

  7. 编辑控件CKEditor和CKFinder

    -使用HTML编辑控件CKEditor和CKFinder Web开发上有很多HTML的编辑控件,如CKEditor.kindeditor等等,很多都做的很好,本文主要介绍在MVC界面里面,CKEdit ...

  8. WCF、Web API、WCF REST、Web Service 区别

    Web Service It is based on SOAP and return data in XML form. It support only HTTP protocol. It is no ...

  9. Ubuntu下安装Python绘图库Matplotlib的方法

    在安装好Python的基础上, sudo apt-get install python-numpy sudo apt-get install python-scipy sudo apt-get ins ...

  10. js中的屏蔽

    js屏蔽效果 /** 屏蔽F1帮助 */  window.onhelp = function(){return false;}     /**  *屏蔽 F5.Ctrl+N.Shift+F10.Alt ...