C#windows桌面应用小程序制作——大文件数据分段解析存储
现在的任务就是做一个大文件解析的桌面应用小程序,具体需求就是:将一个很大的文件里的数据按一定标志拆分然后分别保存到某个文件夹下面。
解析的文件内容为以下内容:
windows 应用小程序界面
具体代码主要分为两步:
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog op = new OpenFileDialog();//创建打开文件夹对话框对象
//op.ShowDialog(); //实现对话框展示
//op.Filter = "fasta文件|*.fasta";//设置文件后缀过滤
if (op.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
filePath = op.FileName; //获取所选文件的全路径
nowFilePath=filePath;
//TextBox1.Text = File.ReadAllText(filePath); //通过textbox1
}
}
第一个按钮主要是进行打开文件选择文件的操作;
private void button2_Click(object sender, EventArgs e)
{
string totalContent = "";
int i = 1;
string directoryPath = @"D:/xyyFile3/";
if (!Directory.Exists(directoryPath))//如果路径不存在
{
Directory.CreateDirectory(directoryPath);//创建一个路径的文件夹
}
var reader = new StreamReader(nowFilePath);
var content = reader.ReadLine();//读一行
totalContent = content;
if(content.Substring(0, 1) ==">")//判断开头是否为>
{
content = reader.ReadLine();//是,继续读取一行
totalContent += content;
while (content.Substring(0, 1)!=">"&& content != null) {
content = reader.ReadLine();
if (content == null)
{
FileStream fs1 = new FileStream("D:\\xyyFile3\\" + i + ".txt", FileMode.Create, FileAccess.Write);//创建写入文件
StreamWriter sw = new StreamWriter(fs1);
//totalContent = totalContent.Replace(")", ")" + "\r\n");
sw.WriteLine(totalContent);
sw.Close();
fs1.Close();
break;
}
else { } while(content.Substring(0, 1) == ">")
{
// totalContent = content;
if (!File.Exists("D:\\xyyFile3"))
{
FileStream fs1 = new FileStream("D:\\xyyFile3\\" + i + ".txt", FileMode.Create, FileAccess.Write);//创建写入文件
StreamWriter sw = new StreamWriter(fs1);
//totalContent = totalContent.Replace(")", ")" + "\r\n");
sw.WriteLine(totalContent);
sw.Close();
fs1.Close();
}
else
{
FileStream fs = new FileStream("D:\\xyyFile2\\" + i + ".txt", FileMode.Open, FileAccess.Write);
StreamWriter sr = new StreamWriter(fs);
sr.WriteLine(totalContent);//开始写入值
sr.Close();
fs.Close();
}
i++;
totalContent = content;
content = reader.ReadLine();
}
totalContent += content;
} }
MessageBox.Show("解析完成,默认保存在D://xyyFile2中");
}
第二个按钮就是进行文件内容的解析。
C#windows桌面应用小程序制作——大文件数据分段解析存储的更多相关文章
- 制作一个windows垃圾清理小程序
制作一个windows垃圾清理小程序: 把下列代码保存为.bat文件(如垃圾清理.bat) 双击它就能很快地清理垃圾文件,大约一分钟不到. 就是下面的文字(这行不用复制)=============== ...
- .net Windows服务程序和安装程序制作图解 及 VS 2010创建、安装、调试 windows服务(windows service)
.net Windows服务程序和安装程序制作 最近项目中用到window服务程序,以前没接触过,比较陌生,花了两天的时间学习了下,写了个简单的服务,但在制作安装程序的时候,参照网上很多资料,却都制作 ...
- 微信小程序开发详解——小程序,大颠覆!
微信小程序开发 联系 苏念 188.1414.7927 微信小程序系统开发 微信新功能开发 小程序开发 小程序怎么开发 app小程序开发 简化小程序开发 微信小程序定制 小程序制作 开发微信小程序 ...
- 微信小程序,前端大梦想(六)
微信小程序,前端大梦想(六) 微信小程序之联合百度API实现定位 定位功能对于我们都不陌生,在移动端的应用中更是不可或缺的功能,小程序中也提供了对应的API帮助我们完成定位的实现,但是目前小程序的定位 ...
- 微信小程序-开心大转盘(圆盘指针)代码分析
大转盘是比较常见的抽奖活动 .以前做过h5的大转盘,最近小程序比较火,客户要求做小程序的大转盘.我们就来分析下代码.先上几个图: 界面效果还是很不错的. 做界面还是比较容易的,只要有前端基础没 ...
- 微信小程序开发工具的数据,配置,日志等目录在哪儿? 怎么找?
原文地址:http://www.wxapp-union.com/portal.php?mod=view&aid=359 本文由本站halfyawn原创:感谢原创者:如有疑问,请在评论内回复 ...
- 微信小程序-02-项目文件之间配合和调用关系
微信小程序-02-项目文件之间配合和调用关系 我就不说那么多了,我是从官方文档拷贝的,然后加上一些自己的笔记,不喜勿喷 官方文档:https://developers.weixin.qq.com/mi ...
- 原创:微信小程序调用PHP后台接口,解析纯html文本
---效果图片预览--- 1.微信js动态传参:wx.request({ url: 'https://m.****.com/index.php/Home/Xiaoxxf/activ ...
- 小程序中搜索文件,阅览pdf,分享文件链接,评论表情符号
小程序中搜索文件,阅览pdf,分享文件链接,评论表情符号 https://blog.csdn.net/hotqin888/article/details/84111389 小程序中打开网页和pdf h ...
随机推荐
- call,apply,bind 方法的学习
这是三个常用的操作函数的方法,在js中函数就是一等公民,所以说掌握这三个方法还是有必要的 call 和 apply,都会绑定函数的上下文(context)并立即执行调用该方法函数,两者区别在于,接受的 ...
- Java基于opencv—归一化
Opencv中提供了resize函数,可以把图像调整到相同大小 Java中resize函数的声明,内部调用的都是native方法 public static void resize(Mat src, ...
- SqlSugar ORM 的学习
http://www.codeisbug.com/Doc/8/1163 https://www.cnblogs.com/sunkaixuan/p/6082664.html
- python学习线路
第一章:计算机基础 https://www.cnblogs.com/koukouku/p/10646025.html 1.1 计算机认识 1.2操作系统 1.3 计算机的运算(进制) 1.4解释器/编 ...
- 如何打开kernel最开始的打印
1.Kernel hacking ---> Kernel low-level debugging functions --> Early printk 2.boot option中你 ...
- TemplatePart特性的作用
看wp控件的源代码时发现TemplatePart特性,于是在百度上查了查: http://blog.csdn.net/wushang923/article/details/9224533 Templa ...
- webpack学习笔记(六)优化
1 loader 使用include,缩小编译范围: rules: [{ test: /\.js$/, include: path.resolve(__dirname, '../src'), use: ...
- C++字节对齐与位域
环境: win7_x64旗舰版.VS2015企业版 一.字节对齐: 说明:为了提高 CPU 的存储速度,编译器会对 struct 和 union的存储进行优化,即进行字节对齐. 1. 指定对齐参数值: ...
- Netty中的基本组件及关系
原文:https://blog.csdn.net/summerZBH123/article/details/79344226--------------------- 概述 这篇文章主要是用来 ...
- Python argparse用法
import argparse import sys parser = argparse.ArgumentParser(description='this is for test.') parser. ...