C# FileStream 按大小分段读取文本内容
该例子首先在C盘根目录创建一个名为’file1.txt‘的文本文件。
然后再运行该例子。。
完整代码如下:
引入命名空间:
- using System.IO;
完整代码:
- namespace FileStreamRead
- {
- class Program
- {
- static void Main(string[] args)
- {
- FileStream fs;
- //获得文件所在路径
- string filePath = "C:\\file1.txt";
- //打开文件
- try
- {
- fs = new FileStream(filePath, FileMode.Open);
- }
- catch(Exception)
- {
- throw;
- }
- //尚未读取的文件内容长度
- long left = fs.Length;
- //存储读取结果
- byte[] bytes = new byte[100];
- //每次读取长度
- int maxLength = bytes.Length;
- //读取位置
- int start = 0;
- //实际返回结果长度
- int num = 0;
- //当文件未读取长度大于0时,不断进行读取
- while (left > 0)
- {
- fs.Position = start;
- num = 0;
- if (left < maxLength)
- num = fs.Read(bytes, 0, Convert.ToInt32(left));
- else
- num = fs.Read(bytes, 0, maxLength);
- if (num == 0)
- break;
- start += num;
- left -= num;
- Console.WriteLine(Encoding.UTF8.GetString(bytes));
- }
- Console.WriteLine("end of file");
- Console.ReadLine();
- fs.Close();
- }
- }
- }
运行效果:
文本文件中的内容是 abc123
C# FileStream 按大小分段读取文本内容的更多相关文章
- js读取文本内容,支持csv.txt
js读取文本内容,支持csv.txt <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...
- Shell脚本逐行读取文本内容并拆分,根据条件筛选文件
时间:2018-11-13 整理:byzqy 需求: 最近帮朋友写了一段脚本,他的需求是根据一份产品清单,去服务器上捞取对应产品编号的测试Log,数量大概有9000~10000条左右.文本内容大致如下 ...
- Shell 读取文本内容
在Linux中有很多方法逐行读取一个文件的方法,其中最常用的就是下面的脚本里的方法,而且是效率最高,使用最多的方法.为了给大家一个直观的感受,我们将通过生成一个大的文件的方式来检验各种方法的执行效率. ...
- while read读取文本内容
读取文件给 while 循环 方式一: exec <FILE while read line do cmd done 方式二: cat FILE_PATH |while read line do ...
- ajax读取文本内容(此处的txt文件和html文件处于同级目录)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <style&g ...
- Python读取文件内容与存储
Python读取与存储文件内容 一..csv文件 读取: import pandas as pd souce_data = pd.read_csv(File_Path) 其中File_path是文件的 ...
- 如何将一个文本内容通过PHP 以表格的方式输入到页面上
如何将一个文本内容通过PHP 以表格的方式输入到页面上 <?php //读取文本内容 $contents = file_get_contents("names.txt"); ...
- Android Studio 如何获取 text文本内容
1.找到目录的main先建立assets格式的文件夹 2.再把需要读取的txt 文件放入到该文件夹下(名字随意),这里取 list.txt. 文件内容 格式如下 3.读取文本内容 工具代码 /** * ...
- TEXT文本编辑框4 点击按钮读取文本框内容到内表
*&---------------------------------------------------------------------* *& Report ZTEST_CWB ...
随机推荐
- mongo的碎片整理
由于业务原因,需要将过期数据删除,但有一个问题出现了,频繁删除数据之后,会产生很多磁盘碎片,这些碎片如果没有被重复利用, 进而会影响查询性能(表查询时仍然会扫描这部分删除数据的磁盘空间块),随需要处理 ...
- redis配置认证密码(转)
redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 ? 1 #requirepass foobared 去掉行前的注 ...
- TP 框架 如果去掉表前缀
#jd_admin_abc 去掉前缀 C('DB_PREFIX')=获取前缀 结果为admin_abc $table_Name=str_replace(C('DB_PREFIX'), '', $tab ...
- Xcode iphone模拟器运行不流畅
xcode该需要多高的配置......把这个取消就好了
- windows 10 python 2.7和python3.6共存解决方法和pip安装
一.首先去python官网将两个版本下载并安装: 然后进入windows的环境变量,检查下面4个变量: 1.C:\Python272.C:\Python27\Scripts3.D:\software\ ...
- Unix环境高级编程——守护进程记录总结(从基础到实现)
一.概念及其特征 守护进程是系统中生存期较长的一种进程,常常在系统引导装入时启动,在系统关闭时终止,没有控制终端,在后台运行.守护进程脱离于终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程 ...
- RocksDB
RocksDB RocksDB is a high performance[1][2][3][4][5] embedded database for key-value data. It is a f ...
- Wix Burn运行64位dism.exe的问题
主要的问题是Burn是一个32位程序,在64位机器上它启动的进程都会被重定向到wow64目录下,也就是说它运行的dism.exe最终会是32位的.解决的方法就是用wix提供的QtExec64CmdLi ...
- 我的Android进阶之旅------>android视频播放只有声音无画面的解决办法
今天调试公司用VideoView实现的播放器来播放视频的时候,只有声音输出而无画面输出.一开始以为是自己程序有问题,调试了半天无果.怀疑是真机本身的问题,于是下了几个第三方的播放器来进行视频播放,例如 ...
- MySQL——事务
核心知识: 1.什么是事务?一组原子性的SQL查询语句 2.事务的四种属性:ACID 3.四种隔离级别:读取未提交内容.读取提交内容.重复读.串行化. 4.什么是幻读?幻读有那些解决办法?连续读取同一 ...