C#写文件处理操作在很多的开发项目中都会涉及,那么具体的实现方法是什么呢?这里向大家介绍三大方法,希望对你在开发应用中有所启发。

首先C#写文件处理操作必须先导入命名空间:using System.IO;

C#写文件方式一:用FileStream

  1. //实例化一个保存文件对话框
  2. SaveFileDialog sf = new SaveFileDialog();
  3. //设置文件保存类型
  4. sf.Filter = "txt文件|*.txt|所有文件|*.*";
  5. //如果用户没有输入扩展名,自动追加后缀
  6. sf.AddExtension = true;
  7. //设置标题
  8. sf.Title = "写文件";
  9. //如果用户点击了保存按钮
  10. if(sf.ShowDialog()==DialogResult.OK)
  11. {
  12. //实例化一个文件流--->与写入文件相关联
  13. FileStream fs = new FileStream(sf.FileName,FileMode.Create);
  14. //获得字节数组
  15. byte [] data =new UTF8Encoding().GetBytes(this.textBox1.Text);
  16. //开始写入
  17. fs.Write(data,0,data.Length);
  18. //清空缓冲区、关闭流
  19. fs.Flush();
  20. fs.Close();
  21. }

C#写文件方式二:用StreamWriter

  1. //实例化一个保存文件对话框
  2. SaveFileDialog sf = new SaveFileDialog();
  3. //设置文件保存类型
  4. sf.Filter = "txt文件|*.txt|所有文件|*.*";
  5. //如果用户没有输入扩展名,自动追加后缀
  6. sf.AddExtension = true;
  7. //设置标题
  8. sf.Title = "写文件";
  9. //如果用户点击了保存按钮
  10. if (sf.ShowDialog() == DialogResult.OK)
  11. {
  12. //实例化一个文件流--->与写入文件相关联
  13. FileStream fs = new FileStream(sf.FileName, FileMode.Create);
  14. //实例化一个StreamWriter-->与fs相关联
  15. StreamWriter sw = new StreamWriter(fs);
  16. //开始写入
  17. sw.Write(this.textBox1.Text);
  18. //清空缓冲区
  19. sw.Flush();
  20. //关闭流
  21. sw.Close();
  22. fs.Close();
  23. }

C#写文件方式三:用BinaryWriter

  1. //实例化一个保存文件对话框
  2. SaveFileDialog sf = new SaveFileDialog();
  3. //设置文件保存类型
  4. sf.Filter = "txt文件|*.txt|所有文件|*.*";
  5. //如果用户没有输入扩展名,自动追加后缀
  6. sf.AddExtension = true;
  7. //设置标题
  8. sf.Title = "写文件";
  9. //如果用户点击了保存按钮
  10. if (sf.ShowDialog() == DialogResult.OK)
  11. {
  12. //实例化一个文件流--->与写入文件相关联
  13. FileStream fs =
  14. new FileStream(sf.FileName, FileMode.Create);
  15. //实例化BinaryWriter
  16. BinaryWriter bw = new BinaryWriter(fs);
  17. bw.Write(this.textBox1.Text);
  18. //清空缓冲区
  19. bw.Flush();
  20. //关闭流
  21. bw.Close();
  22. fs.Close();
  23. }

另外,在文本文件最后添加内容时也可用:

System.IO.File.AppendAllText(FileName, contents, Encoding);

对于richTextBox来说,可以这样载入和保存文件:

richTextBox1.LoadFile(FileName, RichTextBoxStreamType.PlainText); richTextBox1.SaveFile(FileName, RichTextBoxStreamType.PlainText);

C#的几种写文件方法的更多相关文章

  1. Go写文件的权限 WriteFile(filename, data, 0644)?

    本文来自博客园,作者:阿伟的博客,转载请注明原文链接:https://www.cnblogs.com/cenjw/p/go-ioutil-writefile-perm.html 前言 go iouit ...

  2. 关于使用 Java 分片读\写文件

    分片读取文件方法: /** * 分片读取文件块 * * @param path 文件路径 * @param position 角标 * @param blockSize 文件块大小 * @return ...

  3. Node.js写文件的三种方法

    Node.js写文件的三种方式: 1.通过管道流写文件 采用管道传输二进制流,可以实现自动管理流,可写流不必当心可读流流的过快而崩溃,适合大小文件传输(推荐) var readStream = fs. ...

  4. java写文件时往末尾追加文件(而不是覆盖原文件),的两种方法总结

    代码如下: import java.io.FileWriter; import java.io.IOException; import java.io.RandomAccessFile; public ...

  5. 批处理文件中获取当前所在路径的几种方法,以及写文件到txt

    @echo off setlocal EnableDelayedExpansion echo 当前正在运行的批处理文件所在路径:!cd! pause @echo off echo 当前目录是:%cd% ...

  6. django上课笔记7-jQuery Ajax 和 原生Ajax-伪造的Ajax-三种Ajax上传文件方法-JSONP和CORS跨域资源共享

    一.jQuery Ajax 和 原生Ajax from django.conf.urls import url from django.contrib import admin from app01 ...

  7. PHP获取文件扩展名五种以上的方法和注释

    在PHP面试中或者考试中会有很大几率碰到写出五种获取文件扩展名的方法,下面是我自己总结的一些方法 $file = ‘需要进行获取扩展名的文件.php’; //第一种,根据.拆分,获取最后一个元素的值f ...

  8. 五、React事件方法(自写一个方法(函数),然后用按钮onClick触发它、自写方法改变this指向3种写法、

    上接:https://www.cnblogs.com/chenxi188/p/11782349.html 项目目录: my-app/ README.md node_modules/ package.j ...

  9. 总结java中创建并写文件的5种方式

    在java中有很多的方法可以创建文件写文件,你是否真的认真的总结过?下面笔者就帮大家总结一下java中创建文件的五种方法. Files.newBufferedWriter(Java 8) Files. ...

随机推荐

  1. leetcode 入门第一题 4ms? 8ms? Two Sum

    今天开启leetcode 入门第一题 题意很简单,就是一个数组中求取两数之和等于目标数的一对儿下标 1.暴力 n^2 两个for循环遍历 用时0.1s 开外 代码就不用写了 2.二分 nlogn 我们 ...

  2. python opencv3 向图像里写字

    git:https://github.com/linyi0604/Computer-Vision # coding:utf-8 import cv2 img = cv2.imread(".. ...

  3. php最简单最基础入门笔记

    偶然翻到之前刚学php时记录的笔记,特此分享给大家,希望对初学者有所帮助. php网页命名不支持中文 isset($abc)   判断变量是否被定义 empty($abc)    判断变量是否为空 u ...

  4. 【搜索】【组合数学】zoj3841 Card

    转载自:http://blog.csdn.net/u013611908/article/details/44545955 题目大意:一副牌除掉大小王,然后有一些已经形成了序列,让你算剩下的牌能组合出多 ...

  5. curl多文件上传

    发送: header('Content-type:text/html; charset=utf-8'); //声明编码//模拟批量POST上传文件$url = 'http://test.cm/rece ...

  6. 趁热打铁学node

    前言 不废话直接官网下载安装. windows安装很简单,双击ok. 完成后命令行输入node -v. 会提示版本号,说明安装成功(Node.js 还自动附带安装了 npm,类似ruby的gem). ...

  7. 设置Linux SSH登录后的欢迎信息

    在这几个文件,各自都设置一下: /etc/motd /etc/issue 在/etc/ssh/sshd_config添加“Banner /etc/ssh/ssh_login_banner” 内容: \ ...

  8. run commands in linux shell using batch file

    adb shell as root after device rooted once device rooted, we must perform "su" before we g ...

  9. OPC and .NET

    Note: recent OPC standards, including Unified Architecture (UA) and Express Interface (Xi) were desi ...

  10. Extjs gridPanel 动态指定表头

    var colMArray = new Array(); colMArray = [{header : "产品代码", dataIndex : "cpdm", ...