C#读写文本文件的方法
作者:春哥也编程 发布时间:2022-02-01 15:20:51
标签:C#,文本文件
本文实例讲述了C#读写文本文件的方法。分享给大家供大家参考。具体分析如下:
System.IO命名空间中的类为托管应用程序提供文件以及其他形式的输入输出。托管i/o的基本构件是流,而流是字节导向的数据的抽象表示。流通过System.IO.Stream类表示.
System.IO.FileStream允许将文件作为流访问;
System.IO.MemoryStream允许将内存块作为流进行访问
以下为读写文件的示例
先引用命名空间
using System.IO;
以下是源代码
namespace 文本文件打开测试
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btn_Read_Click(object sender, EventArgs e)
{
//异常检测开始
try
{
FileStream fs = new FileStream(@tB_PachFileName.Text , FileMode.Open, FileAccess.Read);//读取文件设定
StreamReader m_streamReader = new StreamReader(fs, System.Text.Encoding.GetEncoding("GB2312"));//设定读写的编码
//使用StreamReader类来读取文件
m_streamReader.BaseStream.Seek(0, SeekOrigin.Begin);
// 从数据流中读取每一行,直到文件的最后一行,并在rTB_Display.Text中显示出内容
this.rTB_Display.Text = "";
string strLine = m_streamReader.ReadLine();
while (strLine != null)
{
this.rTB_Display.Text += strLine + "\n";
strLine = m_streamReader.ReadLine();
}
//关闭此StreamReader对象
m_streamReader.Close();
}
catch
{
//抛出异常
MessageBox.Show("指定文件不存在");
return;
}
//异常检测结束
}
private void btn_Replace_Click(object sender, EventArgs e)
{
//判断替换开始
if (tB_Replace.Text == ""&&tB_Replace_2.Text=="")
{
MessageBox.Show("想替换的字符都没有就换啊,你太有才了");
}
else
{
if (rTB_Display.Text == "")
{
MessageBox.Show("文件内容为空无法进行替换,请检查文件");
}
else
{
string str = rTB_Display.Text.ToString();
rTB_Display.Text = str.Replace(@tB_Replace.Text ,@tB_Replace_2.Text);//替换
}
}
//结束
}
private void btn_Save_Click(object sender, EventArgs e)
{
//异常检测开始
try
{
//创建一个文件流,用以写入或者创建一个StreamWriter
FileStream fs = new FileStream(@tB_Save.Text, FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.Flush();
// 使用StreamWriter来往文件中写入内容
m_streamWriter.BaseStream.Seek(0, SeekOrigin.Begin);
// 把richTextBox1中的内容写入文件
m_streamWriter.Write(rTB_Display.Text);
//关闭此文件
m_streamWriter.Flush();
m_streamWriter.Close();
}
catch
{
//抛出异常
MessageBox.Show("写入文件失败,请检查路径 文件名与权限是否符合");
}
//异常检测结束
}
}
}
希望本文所述对大家的C#程序设计有所帮助。


猜你喜欢
- 一、在相应的板块中开启DataBinding dataBinding {
- 问题项目是springcloud项目,在maven install某一个项目时报错:程序包com.example.commons.appli
- 本文实例所述为Android天气预报之解析天气数据的代码,可实现获取HttpGet对象读取天气网站天气数据,并从数据中解析出天气数据,比如温
- 针对字符串是数字和字母结合而进行的,如"a20"和"a9";比较而得出结果是"a20&qu
- Spring中有个RestTemplate类用来发送HTTP请求很方便,本文分享一个SpringBoot发送POST请求并接收返回数据的例子
- 目标:了解Swagger的作用和概念了解前后端分离在springBoot中集成SwaggerSwagger简介前后端分离VUE+spring
- 本文实例讲述了C#使用listView增删操作的方法。分享给大家供大家参考。具体分析如下:应用场景: C#中使用listView控件,实现动
- 简介一般情况下我们在flutter中搭建的app基本上都是用的是MaterialApp这种设计模式,MaterialApp中为我们接下来使用
- 本文实例讲述了Android编程之分辨率处理相关代码段。分享给大家供大家参考,具体如下:1. 通常我们所说的屏幕分辨率如800x480、96
- 一、广播机制概述通常情况下在学校的每个教室都会装有一个喇叭,这些喇叭是接入到学校广播室的。如果有重要通知,会发送一条广播来告知全校师生。为了
- SharedPreferences在开发过程中,数据存取是较为频繁的,今天我们来了解下android几种常见的数据存取方式。在Android
- 公司的一个手机端的 CRM 项目最近要增加小票打印的功能,就是我们点外卖的时候经常会见到的那种小票。这里主要涉及到两大块的知识:蓝牙连接及数
- 介绍今天主要分享一下 kafka 的 rebalance,在 kafka 中,rebalance 是一个十分重要的概念,很多时候引发的一些问
- 通常 Java 执行 Windows 或者 Linux 的命令时,都是使用 Runtime.getRuntime.exec(com
- 一、链表的介绍什么是链表链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结
- 本文较为详细的分析了Java反射机制。分享给大家供大家参考,具体如下:一、预先需要掌握的知识(java虚拟机) java虚拟机的方法区:ja
- 如下所示:<?xml version="1.0" encoding="utf-8" ?>
- 一、首先来看一个例子package net.println.kotlin.chapter4/** * @author:wangdong *
- 在使用feign调用其它服务时,发现获取的参数是null,当参数是对象是,是执行的Post请求,所以要在方法参数前加@RequestBody
- 目录顶级程序顶级程序中的方法顶级程序中的类顶级程序的原理分析当我们用 C# 进行编码的时候,总需要写很多的模板代码,即使是最简单的 cons