C# System.IO.File
using System;
using System.IO; class Test
{
public static void Main()
{
string path = @"c:\temp\MyTest.txt";
if (!File.Exists(path))
{
// Create a file to write to.
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine("Hello");
sw.WriteLine("And");
sw.WriteLine("Welcome");
}
} // Open the file to read from.
using (StreamReader sr = File.OpenText(path))
{
string s;
while ((s = sr.ReadLine()) != null)
{
Console.WriteLine(s);
}
}
}
}
提供用于创建、复制、删除、移动和打开单一文件的静态方法,并协助创建 FileStream 对象。
方法
| AppendAllLines(String, IEnumerable<String>) |
向一个文件中追加行,然后关闭该文件。 如果指定文件不存在,此方法会创建一个文件,向其中写入指定的行,然后关闭该文件。 |
| AppendAllLines(String, IEnumerable<String>, Encoding) |
使用指定的编码向一个文件中追加行,然后关闭该文件。 如果指定文件不存在,此方法会创建一个文件,向其中写入指定的行,然后关闭该文件。 |
| AppendAllText(String, String) |
打开一个文件,向其中追加指定的字符串,然后关闭该文件。 如果文件不存在,此方法将创建一个文件,将指定的字符串写入文件,然后关闭该文件。 |
| AppendAllText(String, String, Encoding) |
将指定的字符串追加到文件中,如果文件还不存在则创建该文件。 |
| AppendText(String) |
创建一个 StreamWriter,它将 UTF-8 编码文本追加到现有文件或新文件(如果指定文件不存在)。 |
| Copy(String, String) |
将现有文件复制到新文件。 不允许覆盖同名的文件。 |
| Copy(String, String, Boolean) |
将现有文件复制到新文件。 允许覆盖同名的文件。 |
| Create(String) |
在指定路径中创建或覆盖文件。 |
| Create(String, Int32) |
创建或覆盖指定的文件。 |
| Create(String, Int32, FileOptions) |
创建或覆盖指定的文件,指定缓冲区大小和一个描述如何创建或覆盖该文件的FileOptions 值。 |
| Create(String, Int32, FileOptions, FileSecurity) |
创建或覆盖具有指定的缓冲区大小、文件选项和文件安全性的指定文件。 |
| CreateText(String) |
创建或打开用于写入 UTF-8 编码文本的文件。 如果该文件已存在,将覆盖其内容。 |
| Decrypt(String) |
使用 Encrypt(String) 方法解密由当前帐户加密的文件。 |
| Delete(String) |
删除指定的文件。 |
| Encrypt(String) |
将某个文件加密,使得只有加密该文件的帐户才能将其解密。 |
| Exists(String) |
确定指定的文件是否存在。 |
| GetAccessControl(String) |
获取一个 FileSecurity 对象,它封装指定文件的访问控制列表 (ACL) 条目。 |
| GetAccessControl(String, AccessControlSections) |
获取一个 FileSecurity 对象,封装特定文件的指定类型的访问控制列表 (ACL) 项。 |
| GetAttributes(String) |
获取在此路径上的文件的 FileAttributes。 |
| GetCreationTime(String) |
返回指定文件或目录的创建日期和时间。 |
| GetCreationTimeUtc(String) |
返回指定的文件或目录的创建日期及时间,其格式为协调通用时 (UTC)。 |
| GetLastAccessTime(String) |
返回上次访问指定文件或目录的日期和时间。 |
| GetLastAccessTimeUtc(String) |
返回上次访问指定的文件或目录的日期及时间,其格式为协调通用时 (UTC)。 |
| GetLastWriteTime(String) |
返回上次写入指定文件或目录的日期和时间。 |
| GetLastWriteTimeUtc(String) |
返回上次写入指定的文件或目录的日期和时间,其格式为协调通用时 (UTC)。 |
| Move(String, String) |
将指定文件移到新位置,提供要指定新文件名的选项。 |
| Open(String, FileMode) |
通过不共享的读/写访问权限打开指定路径上的 FileStream。 |
| Open(String, FileMode, FileAccess) |
通过指定的模式和不共享的访问权限打开指定路径上的 FileStream。 |
| Open(String, FileMode, FileAccess, FileShare) |
打开指定路径上的 FileStream,具有带读、写或读/写访问的指定模式和指定的共享选项。 |
| OpenRead(String) |
打开现有文件以进行读取。 |
| OpenText(String) |
打开现有 UTF-8 编码文本文件以进行读取。 |
| OpenWrite(String) |
打开一个现有文件或创建一个新文件以进行写入。 |
| ReadAllBytes(String) |
打开一个二进制文件,将文件的内容读入一个字节数组,然后关闭该文件。 |
| ReadAllLines(String) |
打开一个文本文件,读取文件的所有行,然后关闭该文件。 |
| ReadAllLines(String, Encoding) |
打开一个文件,使用指定的编码读取文件的所有行,然后关闭该文件。 |
| ReadAllText(String, Encoding) |
打开一个文件,使用指定的编码读取文件中的所有文本,然后关闭此文件。 |
| ReadAllText(String) |
打开一个文本文件,读取文件中的所有文本,然后关闭此文件。 |
| ReadLines(String) |
读取文件的行。 |
| ReadLines(String, Encoding) |
读取具有指定编码的文件的行。 |
| Replace(String, String, String) |
使用其他文件的内容替换指定文件的内容,这一过程将删除原始文件,并创建被替换文件的备份。 |
| Replace(String, String, String, Boolean) |
用其他文件的内容替换指定文件的内容,这一过程将删除原始文件,并创建被替换文件的备份,还可以忽略合并错误。 |
| SetAccessControl(String, FileSecurity) |
将 FileSecurity 对象描述的访问控制列表 (ACL) 项应用于指定的文件。 |
| SetAttributes(String, FileAttributes) |
获取指定路径上的文件的指定 FileAttributes。 |
| SetCreationTime(String, DateTime) |
设置创建该文件的日期和时间。 |
| SetCreationTimeUtc(String, DateTime) |
设置文件创建的日期和时间,其格式为协调通用时 (UTC)。 |
| SetLastAccessTime(String, DateTime) |
设置上次访问指定文件的日期和时间。 |
| SetLastAccessTimeUtc(String, DateTime) |
设置上次访问指定的文件的日期和时间,其格式为协调通用时 (UTC)。 |
| SetLastWriteTime(String, DateTime) |
设置上次写入指定文件的日期和时间。 |
| SetLastWriteTimeUtc(String, DateTime) |
设置上次写入指定的文件的日期和时间,其格式为协调通用时 (UTC)。 |
| WriteAllBytes(String, Byte[]) |
创建一个新文件,在其中写入指定的字节数组,然后关闭该文件。 如果目标文件已存在,则覆盖该文件。 |
| WriteAllLines(String, String[], Encoding) |
创建一个新文件,使用指定编码在其中写入指定的字符串数组,然后关闭该文件。 |
| WriteAllLines(String, IEnumerable<String>, Encoding) |
使用指定的编码创建一个新文件,向其中写入一个字符串集合,然后关闭该文件。 |
| WriteAllLines(String, String[]) |
创建一个新文件,在其中写入指定的字节数组,然后关闭该文件。 |
| WriteAllLines(String, IEnumerable<String>) |
创建一个新文件,向其中写入一个字符串集合,然后关闭该文件。 |
| WriteAllText(String, String) |
创建一个新文件,向其中写入指定的字符串,然后关闭文件。 如果目标文件已存在,则覆盖该文件。 |
| WriteAllText(String, String, Encoding) |
创建一个新文件,使用指定编码向其中写入指定的字符串,然后关闭文件。 如果目标文件已存在,则覆盖该文件。 |
C# System.IO.File的更多相关文章
- System.IO.File.Create 不会自动释放,一定要Dispose
这样会导致W3P进程一直占用这个文件 System.IO.File.Create(HttpContext.Current.Server.MapPath(strName)) 最好加上Dispose Sy ...
- IIS目录下文件共享后System.IO.File.Exists返回false
场景:在iis目录下,因为特殊需要共享一个文件夹,给到其他的技术人员访问,突然发现小小的操作,搞“大”了,使用 string path = Server.MapPath("~/file/te ...
- 详解C#中System.IO.File类和System.IO.FileInfo类的用法
System.IO.File类和System.IO.FileInfo类主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间.下面通过程序实例来介绍其主要属性和方法. (1) 文件打开 ...
- System.IO.File.WriteAllText("log.txt", "dddd");
System.IO.File.WriteAllText("log.txt", "dddd");
- System.IO.File类和System.IO.FileInfo类
1.System.IO.File类 ※文件create, copy,move,SetAttributes,open,exists ※由于File.Create方法默认向所有用户授予对新文件的完全读写. ...
- 关于 System.IO.File.Exists 需要注意的事项
各位: .NET Framework 本省在设计的时候,他对于异常没有完全做到抛出,这样可能会有很多意想不到的问题. 比如 你在asp.net 应用程序中判断文件是否存在,这个文件可能是一个共 ...
- system.io.file创建
在实际开发中,如果用的文件名不能确定位置.或名字.可以使用GUID类来命名函数.Guid 结构标识全局唯一标示符.其NewGuid结构可以初始化一个新历.该方法语法格式如下: public stati ...
- 未处理的异常:system.io.file load exception:无法加载文件或程序集“ 。。。。 找到的程序集的清单定义与程序集引用不匹配。
问题描述: 添加控制器的时候,突然就报了这个错: Unhandled Exception: System.IO.FileLoadException: Could not load file or as ...
- 安卓上为什么不能用system.io.file读取streammingAssets目录下的文件
首先,看文档: Streaming Assets Most assets in Unity are combined into the project when it is built. Howe ...
随机推荐
- Math对象的常用属性和方法
属性 描述 Math.PI 返回π(3.1415926) 方法 描述 Math.round() 将数字四舍五入到离它最近的整数 Math.sart(n) 返回平方根,例如Math.sart(9)返回3 ...
- flex布局简介
一.概述 浮动在移动布局中不再重要,flex盒模型越来越重要. flexbox经历过三个版本,主要区别是2009年到2012年之间的语法变化. 最新的语法和现在规范是同步的(例display:flex ...
- (APIO2014)序列分割
题解: 我也不知道为啥上午上课讲了我昨天看的3题 这题关键在于发现操作顺序无关的 可以发现最终答案是任意两段乘积的和 那这个东西显然是可以dp的 然后可以斜率优化一波 nklongn 另外上课讲的是当 ...
- java基础面试题-2
第一,谈谈final, finally, finalize的区别. final---修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.因此一个类不能既被 ...
- moodle 笔记
默认版块的设置: //这些变量为新课程定义了DEFAULT块变量如果设置了这个变量,它将覆盖所有其他变量,并且是唯一使用的变量s $CFG->defaultblocks_override = ' ...
- 高效遍历匹配Json数据与双层for循环遍历Json数据
工作中往往遇到这种情况,保留用户操作痕迹,比如用户选择过得东西,用户进入其它页面再返回来用户选择的的数据还在. 比如:1.购物车列表中勾选某些,点击任意一项,前往详情页,再返回购物车依旧需要呈现勾选状 ...
- 活动 Web 页面人机识别验证的探索与实践
在电商行业,线上的营销活动特别多.在移动互联网时代,一般为了活动的快速上线和内容的即时更新,大部分的业务场景仍然通过 Web 页面来承载.但由于 Web 页面天生“环境透明”,相较于移动客户端页面在安 ...
- 算法进阶面试题04——平衡二叉搜索树、AVL/红黑/SB树、删除和调整平衡的方法、输出大楼轮廓、累加和等于num的最长数组、滴滴Xor
接着第三课的内容和讲了第四课的部分内容 1.介绍二叉搜索树 在二叉树上,何为一个节点的后继节点? 何为搜索二叉树? 如何实现搜索二叉树的查找?插入?删除? 二叉树的概念上衍生出的. 任何一个节点,左比 ...
- 2827: 千山鸟飞绝 非旋treap
国际惯例的题面:看起来很不可做的样子,我们先来整理一下题意吧.就是,维护每个点曾经拥有过的最大的两个属性值,支持把点的位置移动.我们用map对每个位置进行离散化,对每个位置建立一个平衡树.为了方便分离 ...
- Codeforces.914D.Bash and a Tough Math Puzzle(线段树)
题目链接 \(Description\) 给定一个序列,两种操作:一是修改一个点的值:二是给一个区间\([l,r]\),问能否只修改一个数使得区间gcd为\(x\). \(Solution\) 想到能 ...