概述
文件:指定名称和路径的数据集合 --> 进行读写操作,文件流
流:经过通信手段进行字节序列的传递 -->输入流,输出流
输入流:读操作
输出流:写操作 -- 对程序而言
I/O类,System.IO 命名空间
可对文件进行输出、读取、写入、关闭等操作
其命名空间下,常用的非抽象类
BinaryReader | 二进制方式读取原始数据流 | BinaryWriter | 二进制格式写入原始数据 |
BufferedStream | 字节流的临时存储 | Directory | 帮助操作目录结构的实现 |
DirectoryInfo | 目录执行操作 | DriveInfo | 提供驱动器的信息 |
File | 指向处理文件 | FileInfo | 对文件执行操作 |
FileStream | 文件内容的读写 | MemoryStream | 随机访问存储在内存中的数据流 |
Path | 对路径信息执行操作 | StreamReader | 读取字节流中的字符 |
StreamWriter | 对一个流中写入字符 | StringReader | 读取字符串缓冲区 |
StringWriter | 写入字符串缓冲区 |
FileStream类 -- 文件内容的读写/关闭,派生在抽象类Stream
语法,创建一个文件/打开现有文件;
FileStream <object_name> = new FileStream( <file_name>,
<FileMode Enumerator>, <FileAccess Enumerator>, <FileShare Enumerator>);
//例如
FileStream F = new FileStream("sample.txt", FileMode.Open, FileAccess.Read, FileShare.Read);
创建以个名为F的文件操作类,指向sample.txt有则读取无则创建,可读可写
参数说明:涉及其全部枚举成员
FileMode | Append -- 打开已有文件,光标指向末尾处/不存在,则创建 Create -- 创建新文件/存在,则覆盖且为空 CreateNew -- 创建新文件/存在,异常处理 Open -- 打开文件/不存在,异常处理 OpenOrCreate -- 打开文件/不存在,创建覆盖且为空 Truncate -- 打开文件,阶段零字节大小,可写入新数据/不存在,异常处理 |
FileAccess | Read、ReadWrite 和 Write |
FileShare | Inheritable -- 允许文件句柄由子进程继承/win32不支持 None -- 拒绝共享文本,关闭前任何操作都失败 Read -- 允许随后读取,未指定该标时,关闭前任何操作都失败 ReadWrite -- 允许随后读写操作,未指定该标时,关闭前任何操作都失败 Write -- 随后打开文件写入,未指定该标时,关闭前任何操作都失败 Delete -- 允许随后删除文件 |
实例
using System;
using System.IO;
namespace FileIOApplication
{
class Program
{
static void Main(string[] args)
{
FileStream F = new FileStream("test.dat",
FileMode.OpenOrCreate, FileAccess.ReadWrite);
for (int i = 1; i <= 20; i++)
{
F.WriteByte((byte)i);
}
F.Position = 0;
for (int i = 0; i <= 20; i++)
{
Console.Write(F.ReadByte() + " ");
}
F.Close();
Console.ReadKey();
}
}
}
运行结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -1
最后
以上就是合适鞋子为你收集整理的C#文件的输入与输出的全部内容,希望文章能够帮你解决C#文件的输入与输出所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复