class FileHelper
{ /// <summary>
/// 检验文件路径是否合法
/// </summary>
/// <param name="path">文件路径</param>
private static bool CheckPath(string path)
{
//正确格式:C:\Users\jcx\Desktop\Test.txt
string pattern = @"\w{1}:([\\].+)*.+\.\w{3,}";
Regex rg = new Regex(pattern);
return rg.IsMatch(path);
} /// <summary>
/// 创建一个新的文本文件
/// </summary>
/// <param name="path">文件路径</param>
/// <param name="content">写入到文本的内容</param>
public static void CreateNewTxtFile(string path,string content)
{
if (!CheckPath(path))
{
throw new Exception("文件路径不合法");
}
//存在则删除
if (File.Exists(path))
{
File.Delete(path);
} using (FileStream fs=new FileStream (path,FileMode.CreateNew,FileAccess.Write))
{
byte[] bt = Encoding.Default.GetBytes(content);
fs.Write(bt,,bt.Length); } //using
} /// <summary>
/// 读取文本文件
/// </summary>
/// <param name="path">文件路径</param>
/// <param name="readByte">指定每次读取字节数</param>
/// <returns>读取的全部文本内容</returns>
public static string ReadTxtFile(string path,long readByte)
{
if (!CheckPath(path))
{
throw new Exception("文件路径不合法");
} StringBuilder result = new StringBuilder();
using (FileStream fs=new FileStream (path,FileMode.Open,FileAccess.Read))
{
byte[] bt = new byte[readByte]; while (fs.Read(bt,,bt.Length)>) //每次只从文件中读取部分字节数,一点点读
{
string txt = Encoding.Default.GetString(bt); //解码转换成字符串
result.AppendLine(txt);
} } //using
return result.ToString(); } } class Program
{
static void Main(string[] args)
{ string path = @"C:\Users\jcx\Desktop\Test.txt"; FileHelper.CreateNewTxtFile(path, "好好努力");
string r = FileHelper.ReadTxtFile(path,); //2个字节为一个汉字,一个汉字一个汉字的读
Console.WriteLine(r); } // Main }

FileStream对文本进行读写操作的更多相关文章

  1. python中文本的读写操作

    文本的操作 函数的排序操作: def func(i): return i[2] list=[('曹操',101,'c'),('吕布',100,'d'),('刘备',200,'l'),('大乔',50, ...

  2. C++对txt文本进行读写操作

    输入输出,是每个程序员的基本功,尤其是对文本的输入和输出.最近,自己在这方面做了一些总结,不是很全面,希望在以后学习和工作的过程中慢慢补充,积累点点滴滴.P.S. 今天天气不错,雾霾散了,天空晴朗,惠 ...

  3. Python_文本的读写操作

    [需求] 1. 获取文本内容,提取内容中的可用信息,对信息进行清洗等一系列处理 2. 算法输出一些内容,保存到文本文件中,便于使用 [函数] 在Python中open()函数是用来打开文件的,包括文本 ...

  4. 【PyQt5-Qt Designer】文本框读写操作

    主要内容: 1.读.写 输入控件(Input Widgets)中的内容(str) 2.保存数据到txt文件 3.从txt文件中读内容,与输入控件中内容比较 将上述各种输入控件(Input Widget ...

  5. C# System.IO和对文件的读写操作

      System.IO命名空间中常用的非抽象类 BinaryReader 从二进制流中读取原始数据 BinaryWriter 从二进制格式中写入原始数据 BufferedStream 字节流的临时存储 ...

  6. JAVASE02-Unit08: 文本数据IO操作 、 异常处理

    Unit08: 文本数据IO操作 . 异常处理 * java.io.ObjectOutputStream * 对象输出流,作用是进行对象序列化 package day08; import java.i ...

  7. JAVASE02-Unit07: 基本IO操作 、 文本数据IO操作

    基本IO操作 . 文本数据IO操作 java标准IO(input/output)操作 package day07; import java.io.FileOutputStream; import ja ...

  8. 使用Python对Excel表格进行简单的读写操作(xlrd/xlwt)

    算是一个小技巧吧,只是进行一些简单的读写操作.让人不爽的是xlrd和xlwt是相对独立的,两个模块的对象不能通用,读写无法连贯操作,只能单独读.单独写,尚不知道如何解决. #①xlrd(读) #cod ...

  9. io流对文件读写操作

    public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedRead ...

随机推荐

  1. Maven 常见问题

    1.前言 Maven,发音是[`meivin],"专家"的意思.它是一个很好的项目管理工具,很早就进入了我的必备工具行列,但是这次为了把project1项目完全迁移并应用maven ...

  2. SharePoint2013使用资源管理器打开失败

    我们在使用sharepoint 2013的文档库或者资源库的时候,经常会需要用到使用“资源管理器”来管理文档,但是有时候,点击“使用资源管理器打开”,会提示如下错误: 在文件资源管理器中打开此位置时遇 ...

  3. lucene源码分析(1)基本要素

    1.源码包 core: Lucene core library analyzers-common: Analyzers for indexing content in different langua ...

  4. Carrierwave 如何配置合理的上传文件名(转自李华顺)

    一直在寻找一个好的 Carrierwave 上传文件命名结构(GridFS),今天终于找到了,这个方式比较靠谱. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 ...

  5. NOI2018 退役记

    退役预订... upd 果然就这么不光荣的退役了... 我居然考出了一场只有两题得分的比赛,我好菜啊... 不过高三充(tui)实(fei)的生活应该很有意思... 大家一起加油吧!!!

  6. hadoop学习笔记(十一):MapReduce数据类型

    一.序列化 1 hadoop自定义了数据类型,在hadoop中,所有的key/value类型必须实现Writable接口.有两个方法,一个是write,一个是readFileds.分别用于读(反序列化 ...

  7. Wordpress性能优化:使用crontab+wp-cli代替wp-cron

    wp-cron的问题     Wordpress内置wp-cron的模块,可以用来执行定时任务,比如定时检查更新,定时发布文章等都需要用到,属于必备功能.但是该模块的特点是:它只能在用户发起请求时检查 ...

  8. OpenDigg前端开源项目月报201704

    由OpenDigg 出品的前端开源项目月报第一期来啦.我们的前端开源月报集合了OpenDigg一个月来新收录的优质前端开源项目,方便前端开发人员便捷的找到自己需要的项目工具. reactide Rea ...

  9. JS获取地址栏参数&jquery

    第一种:字符串拆分法 window.location.href 或者 location.href 或者 window.location 获得地址栏中的所有内容 decodeURI()可以解码地址栏中的 ...

  10. Java - Float与Double类型比较

    https://blog.csdn.net/wcxiaoych/article/details/42806313