//Stream 字节序列的一般视图 读取 写入 查找
// 抽象类
//TextWriter(Reader) TextReader 读取连续字符系列的读取器 StreamWriter,StringWriter StreamReader

//StreamWriter(Reader) IDispose
//using(.....) 默认编码 utf8

//FileStream 文件流 字节

//File FileInfo

 //读取private void button1_Click(object sender, EventArgs e){using (StreamReader sr = new StreamReader("mytext.txt")){Console.WriteLine(sr.ReadToEnd());string line = "";while ((line = sr.ReadLine()) != null){Console.WriteLine(line);}//    //char[] buffer;//    //buffer =new char[(int)sr.BaseStream.Length];//    //sr.Read(buffer, 0, (int)sr.BaseStream.Length);//    //Console.WriteLine(new string(buffer));}//文本复制到另一个文件里char[] buffer;using (StreamReader sr = new StreamReader("mytext.txt")){Encoding en = sr.CurrentEncoding;using (StreamWriter sw = new StreamWriter("mytextto.txt")){//char[] buffer;//int count=(int)sr.BaseStream.Length;//buffer = new char[count];//sr.Read(buffer, 0, count);//Task.Run(()=>sw.WriteAsync(buffer, 0, count));Encoding enw = sw.Encoding;buffer = new char[20];while (true){int r = sr.Read(buffer, 0, 20);if (r == 0) break;sw.Write(buffer, 0, 20);}}}}

  //写入

 {using (TextWriter tw = new StreamWriter("mytext.txt", false)){tw.Write("sssssssssssss");//tw.Flush();tw.Write("ddddddddddd");//不换行tw.Write(tw.NewLine);//换行符//tw.Flush();tw.WriteLine("cccccccccccccc");//写入,换行tw.WriteLine("eeeeeeeeeeeee");//Task t = tw.WriteAsync("ffffffffff");tw.Flush();//清理缓冲区,把缓冲区的数据写入基础 设备tw.Close();}}

  

 private void button2_Click(object sender, EventArgs e){//using(FileStream fs=new FileStream("mytext.txt",FileMode.Open,FileAccess.Read))//{//    using(FileStream fs1=new FileStream("mytextto.txt",FileMode.OpenOrCreate,FileAccess.Write))//Append  FileAccess.Write//    {//        byte[] buffer = new byte[1024*1024*5];//        while(true)//        {//           int r = fs.Read(buffer, 0, buffer.Length);//           if (r > 0)//               fs1.Write(buffer, 0, r);//           if (r < buffer.Length) break;//        }//    }//}using (FileStream fs = new FileStream("第一节DataSet与DataTable1.exe", FileMode.Open, FileAccess.Read)){using (FileStream fs1 = new FileStream("D:/第一节DataSet与DataTable2.exe", FileMode.OpenOrCreate, FileAccess.Write))//Append  FileAccess.Write{byte[] buffer = new byte[1024 * 1024 * 5];while (true){int r = fs.Read(buffer, 0, buffer.Length);if (r > 0)fs1.Write(buffer, 0, r);if (r < buffer.Length) break;}}}}

  

private FileStream readFs;private FileStream writeFs;private int busize = 1024 * 1024 * 5;private byte[] buffer;

  //异步读写文件

 private void button4_Click(object sender, EventArgs e){buffer = new byte[busize];ReadFileAsync("第一节DataSet与DataTable1.exe");}

   //异步读取

 private void ReadFileAsync(string fName){readFs = new FileStream(fName, FileMode.Open, FileAccess.Read, FileShare.Read, busize, true);IAsyncResult iResult = readFs.BeginRead(buffer, 0, buffer.Length, OnCompleteRead, null);}object lockbu = new object();

   //异步读的回调

 private void OnCompleteRead(IAsyncResult iResult){int byteCount = readFs.EndRead(iResult);if (byteCount > 0){//写读取到的长度WriteFileAsync("D:/第一节DataSet与DataTable2.exe", byteCount);if (byteCount < busize)readFs.Close();elsereadFs.BeginRead(buffer, 0, busize, OnCompleteRead, null);}elsereadFs.Close();}

   //异步写

 private void WriteFileAsync(string fName, int count){writeFs = new FileStream(fName, FileMode.Append, FileAccess.Write, FileShare.None, count, true);writeFs.BeginWrite(buffer, 0, count, OnCompleteWrite, null);writeFs.Close();}

  //异步写的回调

 private void OnCompleteWrite(IAsyncResult iResult){writeFs.EndWrite(iResult);}

  

转载于:https://www.cnblogs.com/Microera/p/8648564.html

【winfrom】读写文本相关推荐

  1. iOS 9应用开发教程之多行读写文本ios9文本视图

    iOS 9应用开发教程之多行读写文本ios9文本视图 多行读写文本--ios9文本视图 文本视图也是输入控件,与文本框不同的是,文本视图可以让用户输入多行,如图2.23所示.在此图中字符串" ...

  2. 《Python Cookbook 3rd》笔记(5.1):读写文本数据

    读写文本数据 问题 你需要读写各种不同编码的文本数据,比如 ASCII,UTF-8 或 UTF-16 编码等. 解法 使用带有 rt 模式的 open() 函数读取文本文件(t表示text文本模式,默 ...

  3. Python 读写文本(open)

    读写参数 Character Meaning 'r' open for reading (default) 'w' open for writing, truncating the file firs ...

  4. ZYNQ-使用SD卡读写文本数据

    学习内容 本文主要关于SD卡相关内容,然后使用SD卡进行TXT文本读写,并用串口打印出读写数据. 开发环境 vivado 18.3&SDK,PYNQ-Z2开发板. SD卡简介 SD卡(Secu ...

  5. tcc读写文本txt文件

    第一部份:文本的写入 一.在tcc目录下建立一个c文件(c文件建立参考我的另一篇文章https://blog.csdn.net/taw19960426/article/details/89417875 ...

  6. 易语言到字节集c,易语言自内存读写文本、字节集

    .子程序 _写内存文本, 整数型, , 把文本内容写到内存返回内存地址 .参数 内容, 文本型 .局部变量 l, 整数型 .局部变量 c, 整数型 c = 取字节集长度 (到字节集 (内容 + &qu ...

  7. 使用UTL_FILE在oracle中读写文本数据

    Technorati 标签: oracle --以SYS用户创建目录dir_dump,文件就保存在这个目录下 SQL> create directory dir_dump as '/data/c ...

  8. C++ 测试CFile读写文本

    #include<iostream> using namespace std;#define _AFXDLL #include <afx.h>//读写入字符文件,默认 //直接 ...

  9. lua自动化脚本关于文本读写和特殊不可见字符转换的处理

    lua自动化脚本关于文本读写和特殊不可见字符转换的处理 因为lua在读写文本中可能还会碰到一些比较变态的不可见字符,%s," "这些转换不了,所以需要做特殊的处理. 参考菜鸟教程的 ...

最新文章

  1. 汇编语言 执行push和执行pop区别 栈顶的变化范围
  2. How program works
  3. 华为怎么显示返回按键_华为 iateey 智能饮水吧评测:即时加热,一秒出水
  4. man命令手册打开以后的使用方法
  5. python 使用文本注解绘制树节点_实用篇 | 34 个最火的 Python 开源框架
  6. 韩国政府计划从Windows 7迁移到Linux
  7. 让Flex程序全屏幕运行
  8. 代码-JS之淡入淡出背景自动切换
  9. vue父子组件生命周期执行顺序_Vue.js 父子组件生命周期调用顺序
  10. MySQL建库建表语句
  11. latex中文小标题_latex定制标题样式
  12. 基于51单片机定时,数码管显示时间
  13. Linu中的网络配置(设置ip,网关(路由功能),dns),虚拟机上网
  14. Excel筛选两列重复的内容
  15. aardio - API调用分析
  16. 什么是数据资产管理?5个角度帮你参透数据资产管理
  17. Lemp + Wordpress 快速搭建个人博客
  18. 双控专业就业机器人_东北大学自动化双控考研专业就业方向
  19. 深信服上网行为管理(AC)部署三两事
  20. JavaScript的起源故事

热门文章

  1. 防火墙(12)——查看协议被连接的次数、通过连接状态来写规则
  2. 互斥锁在python中的应用
  3. 16位汇编 Hook int 0实例
  4. IPython Notebook简介1
  5. UNIX 高手的 20 个习惯
  6. java乒乓_Java -- 乒乓球 乒乓弹球游戏
  7. 17.容器的成员函数优先于同名的算法
  8. tf记录 之 tf.boolean_mask函数
  9. java中如何确定是数字_java中怎么判断指定的数据是字符串是否是数字?
  10. 计算机组成原理-数制与编码