-
c#中文件流的基础知识
c# 中文件流的基础知识
FileStream 是一个用于在 C# 中读写文件的类。它是系统的一部分。IO 命名空间。要使用 FileStream 操作文件,需要创建一个 FileStream 类的对象。该对象有四个参数;文件名、文件模式、文件访问和文件共享。
声明文件流对象的语法如下
文件流文件对象=新文件流(文件名/路径,文件模式.字段,文件访问.字段,文件共享.字段);
参数 | 描述 | 菲尔茨 |
---|---|---|
文件的名称 | 您要使用的文件名及其扩展名或文件的完整路径。 | 例如:文件名. txt,@“C:\用户\用户名\文档\文件名. txt” |
file mode-档案模式 | 它指定文件必须以哪种模式打开。 | –打开–打开现有文件 |
–创建–创建新文件如果已经存在相同的文件名,它将被覆盖 | ||
–打开或创建–打开文件如果存在,否则创建新文件如果不存在 | ||
–创建–专门创建新文件 | ||
–追加–打开现有文件并在文件末尾追加更多信息。如果文件不存在,将创建一个新文件 | ||
–截断–打开一个现有文件,将其大小截断为零字节 | ||
文件访问 | 它指定对文件的访问。 | –读取–从文件中读取数据 |
–写入–向文件中写入数据 | ||
–读写–向文件中读取和写入数据 | ||
文件共享 | 它指定了其他 FileStream 对象对此特定文件的访问权限 | –无–拒绝文件共享。在文件关闭之前,任何访问请求都将失败。 |
–读取–允许后续读取文件。 | ||
–写入–允许后续写入文件。 | ||
–读写–允许文件的后续读写。 | ||
–删除–允许后续删除文件。 | ||
–可继承–允许子进程继承文件句柄。 |
示例:在下面给出的代码中,我们向文本文件中写入和读取一些文本。要写入文本,首先在创建模式下创建文件流类的对象,并进行写访问。将您要编写的文本存储在 var 类型的变量中,这是一个用于声明隐式类型的关键字。
接下来,创建一个字节数组,并将文本编码为 UTF8,UTF8 是一种能够以 Unicode 编码所有 1,112,064 个有效字符代码点的编码标准。然后使用 Write()方法写入文本文件。Write()方法的参数是要写入的字节数组、文本文件的偏移量和文本的长度。最后,使用 close()关闭 FileStream 对象。
为了读取文本文件,我们在打开模式和读取访问中创建一个文件流对象。声明一个从文本文件中读取的字节数组和一个保持字节计数的整数。使用 Read()方法从文本文件中读取。Read()方法的参数是字节数组、文本文件从哪里开始读取的偏移量以及必须读取的文本长度。最后,使用 GetString()将读取的文本从字节数组写入控制台。
// C# program to write and read from
// a text file using FileStream class
using System;
using System.IO;
using System.Text;
namespace FileStreamWriteRead {
class GFG {
static void Main(string[] args)
{
// Create a FileStream Object
// to write to a text file
// The parameters are complete
// path of the text file in the
// system, in Create mode, the
// access to this process is
// Write and for other
// processes is None
FileStream fWrite = new FileStream(@"M:\Documents\Textfile.txt",
FileMode.Create, FileAccess.Write, FileShare.None);
// Store the text in the variable text
var text = "This is some text written to the textfile "+
"named Textfile using FileStream class.";
// Store the text in a byte array with
// UTF8 encoding (8-bit Unicode
// Transformation Format)
byte[] writeArr = Encoding.UTF8.GetBytes(text);
// Using the Write method write
// the encoded byte array to
// the textfile
fWrite.Write(writeArr, 0, text.Length);
// Closee the FileStream object
fWrite.Close();
// Create a FileStream Object
// to read from a text file
// The parameters are complete
// path of the text file in
// the system, in Open mode,
// the access to this process is
// Read and for other processes
// is Read as well
FileStream fRead = new FileStream(@"M:\Documents\Textfile.txt",
FileMode.Open, FileAccess.Read, FileShare.Read);
// Create a byte array
// to read from the
// text file
byte[] readArr = new byte[text.Length];
int count;
// Using the Read method
// read until end of file
while ((count = fRead.Read(readArr, 0, readArr.Length)) > 0) {
Console.WriteLine(Encoding.UTF8.GetString(readArr, 0, count));
}
// Close the FileStream Object
fRead.Close();
Console.ReadKey();
}
}
}
输出:
版权属于:月萌API www.moonapi.com,转载请注明出处
本文链接:https://www.moonapi.com/news/27748.html
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数