c#读取文本文档实践3-写入到文本本文档
首先通过File.ReadAllLines()方法读入文本文档中内容并返回字符串数组contents,这样每行数据就成为了这个字符串数组contents的一个元素,再利用split()方法将每一个元素以空格或制表符分割,返回字符串数组,这样一行数据又被返回了3个字符串放入字符串数组中,通过Convert.ToDouble()方法将其转化为double类型并计算。创建一个StringBuilder数据类型将每行的字符串添加进去,转换为string后,最后用File.WriteAllText方法写入新建的文档。
优点是简单,缺点是只能读入小文档
,空格或制表符间隔都行
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Diagnostics;//Stopwatch所在命名空间 namespace 书名总价格计算
{
class Program
{
static void Main(string[] args)
{
string path = @"C:\Users\Administrator\Desktop\书名总价格计算.txt";
string[] contents = File.ReadAllLines(path, Encoding.Default);//将文档所有内容放入字符串数组中
string[] strNew;
string strResult; Stopwatch sw = new Stopwatch();//创建一个计时器方法
sw.Start();//开始计时
StringBuilder sb=new StringBuilder ();//创建sb for (int i = ; i < contents.Length; i++)//从第二行开始
{
if (i != )
{
strNew = contents[i].Split(new char[] { ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries);
Console.WriteLine("{0} {1} {2} {3}", strNew[], strNew[], strNew[], Convert.ToDouble(strNew[]) * Convert.ToDouble(strNew[]));
sb.Append(strNew[].ToString() + " " + strNew[].ToString() + " " + strNew[].ToString() + " " + (Convert.ToDouble(strNew[]) * Convert.ToDouble(strNew[])).ToString() + System.Environment.NewLine);
}
else//第一行题头不参与计算总价格
{
strNew = contents[i].Split(new char[] { ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries);
//将字符数组合并成一个字符串
//strResult=string.Join (" ", new string[] {strNew[0], strNew[1], strNew[2]});
//strResult = string.Join(" ", strNew);
//Console.WriteLine(strResult);
Console.WriteLine("{0} {1} {2} 总价格", strNew[], strNew[], strNew[]);
sb.Append(strNew[].ToString() + " " + strNew[].ToString() + " " + strNew[].ToString() + " 总价格" + System.Environment.NewLine);
}
}
Console.WriteLine(sb);
//将sb这个字符串输出到新建的文本文档中
File.WriteAllText (@"C:\Users\Administrator\Desktop\书名总价格计算结果.txt", sb.ToString() );
sw.Stop();//结束计时,以毫秒输出
Console.WriteLine(sw.ElapsedMilliseconds);//以毫秒形式输出结果
}
}
}


参考:http://blog.sina.com.cn/s/articlelist_2379298071_7_1.html
c#读取文本文档实践3-写入到文本本文档的更多相关文章
- c#读取文本文档实践4-读入到list泛型集合计算后写入新文档
商品 数量 单价英语 66 100语文 66 80数学 66 100化学 66 40物理 66 60 上面截图是要处理的文本文档内容,目的是计算出总价并加在最后一列. 这一篇与上一篇比较类似,目的相同 ...
- 编写Java程序,读取文本文档的内容,去除文本中包含的“广告”字样,把更改后的内容保存到一个新的文本文档中
查看本章节 查看作业目录 需求说明: 读取文本文档的内容,去除文本中包含的"广告"字样,把更改后的内容保存到一个新的文本文档中 实现思路: 在main() 方法中,使用 new F ...
- 读取XML文档结构并写入内容
1.在项目中新建XML文档结构.xsd文件,在其中添加相应的节点. 2.读取文档结构并写入内容 string initFileName = @"D:\Config.xml"; Da ...
- AJAX实现简单的读取文本文档内容到网页--AJAX
效果图: Demo.html: <!DOCTYPE html><html lang="en"><head> <meta charset=& ...
- 解决Spring的java项目打包后执行出现“无法读取方案文档...“、“原因为 1) 无法找到文档; 2) 无法读取文档; 3) 文档的根元素不是...”问题
问题 一个用Spring建的java项目,在Eclipse或idea中运行正常,为什么打包后运行出现如下错误呢? 2019/07/10/19:04:07 WARN [main] org.springf ...
- C#调用NPOI组件读取excel表格数据转为datatable写入word表格中并向word中插入图片/文字/书签 获得书签列表
调用word的com组件将400条数据导入word表格中耗时10分钟简直不能忍受,使用NPOI组件耗时4秒钟.但是NPOI中替换书签内容的功能不知道是不支持还是没找到. 辅助类 Excel表格数据与D ...
- php 读取文件头判断文件类型的实现代码
php代码实现读取文件头判断文件类型,支持图片.rar.exe等后缀. 例子: <?php $filename = "11.jpg"; //为图片的路径可以用d:/uploa ...
- java 读取CSV数据并写入txt文本
java 读取CSV数据并写入txt文本 package com.vfsd; import java.io.BufferedWriter; import java.io.File; import ja ...
- python读取、写入txt文本内容
转载:https://blog.csdn.net/qq_37828488/article/details/100024924 python常用的读取文件函数有三种read().readline().r ...
随机推荐
- Bootstrap强调内容
在实际项目中,对于一些重要的文本,希望突出强调的部分都会做另外的样式处理.Bootstrap同样对这部分做了一些轻量级的处理. 如果想让一个段落p突出显示,可以通过添加类名“.lead”实现,其作用就 ...
- python语法笔记(五)
1.python内存管理 (1)对象内存使用 &nsbp;&nsbp;&nsbp;&nsbp;在python中通过执行内建函数 id(obj) 可以获得对象obj在内存 ...
- 【c++】读写txt
#include<iostrea> #include<fstream> int main() { ofstream fout;// 创建一个ofstream对象 fout.op ...
- git服务器搭建
http://blog.sina.com.cn/s/blog_904dee7f0101gait.html http://www.centoscn.com/image-text/install/2014 ...
- [ 转]Android快速开发–使用ORMLite操作数据库
OrmLite是一个数据库操作辅助的开源框架,主要面向Java语言.在Android面向数据库开发中,是一个比较流行的开源框架,方便操作而且功能强大,今天来学习一下,最近的项目中也有所涉及,写个博客来 ...
- canvas打开本机摄像头
(function () { var video = document.createElement("video"); video.autoplay="autoplay& ...
- (18)odoo规范
* 约定 # 命名会用 蛇形式或驼峰式 todo_task_stage 蛇形式 class TodoTask 驼峰式 变量名还是蛇形居多, 类名和方法名驼 ...
- md5算法原理一窥(其一)
首先,需要了解的事,md5并不是传说中的加密算法,只是一种散列算法.其加密的算法并不是我们说所的那样固定不变,只是一种映射的关系. 所以解密MD5没有现成的算法,只能用穷举法,把可能出现的明文,用MD ...
- ocument的createDocumentFragment()方法
在<javascript高级程序设计>一书的6.3.5:创建和操作节点一节中,介绍了几种动态创建html节点的方法,其中有以下几种常见方法: · crateAttribute(name): ...
- 自定义Encoder/Decoder进行对象传递
转载:http://blog.csdn.net/top_code/article/details/50901623 在上一篇文章中,我们使用Netty4本身自带的ObjectDecoder,Objec ...