C#里的文件流(FileStream)
一、文件流(FileStream)
FileStream 类是公开以文件为主的 Stream,既支持同步读写操作,也支持异步读写操作。
命名空间:System.IO
程序集:mscorlib(在 mscorlib.dll 中)
在C#中的声明为
[ComVisibleAttribute(true)] public class FileStream : Stream
二、文件流写入
private void btnChooseOpenFile_Click(object sender, EventArgs e) { //选择文本框 对象 OpenFileDialog ofd = new OpenFileDialog(); ofd.InitialDirectory = @"C:\Users\John\Desktop"; //如果用户确定 if (ofd.ShowDialog() == DialogResult.OK) { //将用户选择的文件路径显示在文本框上 txtFilePathOpen.Text = ofd.FileName; } } //保存文件 private void btnSave_Click(object sender, EventArgs e) { string strContent = txtInputSave.Text.Trim(); //创建文件流(文件路径,文件操作、创建) using (FileStream fs = new FileStream(txtFilePathOpen.Text, FileMode.Create)) { //将字符串字符串转成byte数组 byte[] byteFile = Encoding.UTF8.GetBytes(strContent); //参数:要写到文件的数据数组,从第几个开始写,一共写多少个 fs.Write(byteFile, 0, byteFile.Length); MessageBox.Show("保存成功!"); } }
二、文件流读出
private void btnChooseOpenFile2_Click(object sender, EventArgs e) { //选择文本框 对象 OpenFileDialog ofd = new OpenFileDialog(); ofd.InitialDirectory = @"C:\Users\John\Desktop"; //如果用户确定 if (ofd.ShowDialog() == DialogResult.OK) { //将用户选择的文件路径显示在文本框上 txtFilePathOpen2.Text = ofd.FileName; } } private void btnRead_Click(object sender, EventArgs e) { using (FileStream fs = new FileStream(txtFilePathOpen2.Text, FileMode.Open)) { byte[] byteData = new byte[1024 * 1024 * 4]; //返回读取的长度 int length=fs.Read(byteData,0,byteData.Length); if (length > 0) { string strData = Encoding.UTF8.GetString(byteData); txtOutputRead.Text = strData; MessageBox.Show("读取成功"); } } }
四、结果:
说明:FileStream将文件中的数据以字节地方式读出(Read)或写入(Write)
当我们需要使用文件流时,需要Encoding.UTF8.GetBytes(strContent);
当我们需要显示时,需要:Encoding.UTF8.GetString(byteData);
C#中的FileStream封装的比较好,比较简单。
FileStream同样可以在C++,J#,VB,JS等当中使用。
本博客中的例子是FileStream在WinForm程序中的简单应用,代码在附件中哦!
相关推荐
本资源“C#源代码-FileStream文件流的操作.zip”包含了一组使用C#编写的源代码,这些代码主要关注对文件进行操作,特别是通过FileStream类实现的文件流操作。FileStream是System.IO命名空间中的一个核心类,它允许...
C#文件的读写操作 FileStream类和StreamReader类 C#文件的读写操作是指在C#中对文件进行读取和写入的操作,这是C#编程中非常重要的一部分。C#中提供了多种方式来实现文件的读写操作,其中最常用的方法是使用...
FileStream对象表示在磁盘或网络路径上指向文件的流。这个类提供了在文件中读写字节的方法,但经常使用StreamReader或StreamWriter执行这些功能。这是因为FileStream类操作的是字节和字节数组,而Stream类操作的是...
文件流是.NET框架中处理文件的一种抽象概念,它将文件视为数据流,允许开发者以顺序的方式访问文件内容。`FileStream`是这个抽象的实现,提供了读写文件的低级接口。 ### 创建FileStream实例 要使用`FileStream`...
在C#编程语言中,文件流操作是处理输入/输出(I/O)操作的关键部分,尤其在Windows Forms(WinForm)应用程序中。文件流允许程序读取、写入或追加文件内容,支持多种数据格式,如文本、图像、音频等。下面我们将详细...
C#文件和流操作 C#语言在文件和流操作方面提供了强大的功能,本文将详细介绍C#语言中文件和流操作的相关知识点。 一、访问文件夹 在C#语言中,访问文件夹使用Directory类,需要在文件的开头加入一条导入语句:...
在C#编程中,文件流是处理数据输入和输出的核心概念。它允许程序与存储设备进行交互,如硬盘、内存或网络。文件流提供了一种高效且灵活的方式来读取、写入和操作文件。本篇将详细介绍C#中关于文件流的使用,包括创建...
总结来说,C#通过文件流方式读取DBF文件涉及到对文件结构的深入理解,包括头部信息、字段定义和数据记录的解析。通过`FileStream`和`BinaryReader`,我们可以逐字节地读取和处理文件内容。在没有第三方库支持的情况...
2. 创建写入流:使用`FileStream`创建一个文件流,准备写入Excel文件。 3. 创建写入器:使用`BinaryWriter`创建一个写入器,以写入数据到文件流中。 4. 构建Excel文件:根据数据结构,构建Excel工作簿和工作表的二...
在C#编程中,`FileStream`是`System.IO`命名空间中的一个类,它用于读取和写入文件。这个类提供了对文件的低级访问,允许开发者按字节流处理文件。`FileStream`是`Stream`类的一个具体实现,`Stream`类是所有输入/...
总结来说,实现“C#实现文件读取并显示读取文件进度条”的功能需要理解文件I/O、流处理、事件驱动编程以及UI更新机制。通过这些技术,我们可以构建出一个能够高效、直观地显示文件读取进度的应用。
C#中主要的文件流类型包括`FileStream`、`StreamReader`和`StreamWriter`等。这些类位于System.IO命名空间下,是处理文件I/O操作的基础。 二、FileStream `FileStream`类是处理磁盘文件的基本类,它可以进行读写...
总结,C#文件流是进行文件操作的基础,通过学习和实践文件流的使用,开发者能够更高效地处理各种文件任务,无论是简单的文本读写还是复杂的二进制数据处理。在实际开发中,熟练掌握文件流的使用,将极大地提升代码的...
总结一下,本实例展示了如何在ASP.NET(C#) Web API中利用文件流实现文件下载。通过创建HTTP响应,设置正确的响应头,并将文件内容作为流发送,我们可以方便地让客户端接收到文件并保存到本地。这种方法简单、高效,...
本篇文章将详细讲解如何在C#中将Excel数据转换为XML文件流,以便进行批量表格导出和打印操作。 首先,我们需要理解Excel与XML之间的转换原理。XML(Extensible Markup Language)是一种结构化数据格式,可以清晰地...
总结来说,C#中的文件流读取CSV文件主要涉及`FileStream`、`StreamReader`和`TextReader`的使用。对于更复杂的Excel操作,可以借助第三方库,如EPPlus或NPOI。在处理Excel数据时,了解如何正确解析和操作CSV格式的...
常见的文件流类型包括FileStream、MemoryStream和NetworkStream等。 **下载过程:** 1. **创建Web服务接口**:在Web服务端,我们需要定义一个方法,该方法接收文件路径作为参数,然后读取文件内容并以字节数组返回...
4. 了解文件流的读写操作与UI更新之间的同步机制,如使用`Application.DoEvents()`或异步编程。 5. 异常处理,确保程序在遇到错误时能优雅地恢复或提示用户。 以上就是关于“C#实现文件读写并显示读写进度”的详细...
本篇将深入探讨如何使用C#通过流来写入数据到文件,以及涉及到的字节流读写文件的技巧。 首先,我们来看一个简单的例子,这个例子展示了如何使用FileStream和StreamWriter类来写入文本数据到文件。以下代码创建了一...