c#读取文本文档实践3-写入到文本本文档

首先通过File.ReadAllLines()方法读入文本文档中内容并返回字符串数组contents,这样每行数据就成为了这个字符串数组contents的一个元素,再利用split()方法将每一个元素以空格或制表符分割,返回字符串数组,这样一行数据又被返回了3个字符串放入字符串数组中,通过Convert.ToDouble()方法将其转化为double类型并计算。创建一个StringBuilder数据类型将每行的字符串添加进去,转换为string后,最后用File.WriteAllText方法写入新建的文档。
优点是简单,缺点是只能读入小文档

,空格或制表符间隔都行

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.IO;
 6 using System.Diagnostics;//Stopwatch所在命名空间
 7
 8 namespace 书名总价格计算
 9 {
10     class Program
11     {
12         static void Main(string[] args)
13         {
14             string path = @"C:\Users\Administrator\Desktop\书名总价格计算.txt";
15             string[] contents = File.ReadAllLines(path, Encoding.Default);//将文档所有内容放入字符串数组中
16             string[] strNew;
17             string strResult;
18
19             Stopwatch sw = new Stopwatch();//创建一个计时器方法
20             sw.Start();//开始计时
21             StringBuilder sb=new StringBuilder ();//创建sb
22
23             for (int i = 0; i < contents.Length; i++)//从第二行开始
24             {
25                 if (i != 0)
26                 {
27                     strNew = contents[i].Split(new char[] { ‘ ‘, ‘\t‘ }, StringSplitOptions.RemoveEmptyEntries);
28                     Console.WriteLine("{0} {1} {2} {3}", strNew[0], strNew[1], strNew[2], Convert.ToDouble(strNew[1]) * Convert.ToDouble(strNew[2]));
29                     sb.Append(strNew[0].ToString() + " " + strNew[1].ToString() + " " + strNew[2].ToString() + " " + (Convert.ToDouble(strNew[1]) * Convert.ToDouble(strNew[2])).ToString() + System.Environment.NewLine);
30                 }
31                 else//第一行题头不参与计算总价格
32                 {
33                     strNew = contents[i].Split(new char[] { ‘ ‘, ‘\t‘ }, StringSplitOptions.RemoveEmptyEntries);
34                     //将字符数组合并成一个字符串
35                     //strResult=string.Join (" ", new string[] {strNew[0], strNew[1], strNew[2]});
36                     //strResult = string.Join(" ", strNew);
37                     //Console.WriteLine(strResult);
38                     Console.WriteLine("{0} {1} {2} 总价格", strNew[0], strNew[1], strNew[2]);
39                     sb.Append(strNew[0].ToString() + " " + strNew[1].ToString() + " " + strNew[2].ToString() + " 总价格" + System.Environment.NewLine);
40                 }
41             }
42             Console.WriteLine(sb);
43             //将sb这个字符串输出到新建的文本文档中
44              File.WriteAllText (@"C:\Users\Administrator\Desktop\书名总价格计算结果.txt", sb.ToString() );
45             sw.Stop();//结束计时,以毫秒输出
46             Console.WriteLine(sw.ElapsedMilliseconds);//以毫秒形式输出结果
47         }
48     }
49 }

参考:http://blog.sina.com.cn/s/articlelist_2379298071_7_1.html

时间: 2024-10-16 12:25:55

c#读取文本文档实践3-写入到文本本文档的相关文章

AJAX实现简单的读取文本文档内容到网页--AJAX

效果图: Demo.html: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="keywords" content=""/> <meta name="description" content=""/> <title

读取文档数据的各列的每行中

读取文档数据的各列的每行中 1.该文件的内容被读 [[email protected] leekwen]# cat userpwd 1412230101 ty001 1412230102 ty002 1512430102 ty003 1511230102 ty004 1411230102 ty002 1411240102 yt005 1412290102 yt012 1510230102 yt022 1512231212 yt032 2.脚本命令 [[email protected] leekw

可视化webpart基础开发——TreeView控件读取文档库中的所有文件夹和文件(递归方法读取)

可视化webpart基础开发——TreeView控件读取文档库中的所有文件夹和文件(递归方法读取) 分类: SharePoint2011-12-23 14:44 1584人阅读 评论(0) 收藏 举报 文档sharepointurl测试stringforms 可视化webpart基础开发——TreeView控件读取文档库中的所有文件夹和文件(递归方法读取) 1.在部署的sharepoint网站中新建一个名为“测试文档库”的文档库,并添加各级的子文件夹和子文件,用于测试 2.在VS2010中新建空

C++中string类及文件流类(ofstream,ifstream)的基本操作---按行读取文档

先说明一个问题:java构建对象只能使用new的方法,而C++则不然. 下面代码实现读取test.txt文件中的内容并显示,同时将某一个字符串输入到文件test1.txt中. 函数getline(ifstream& param1, string& param2);按行读取文档,若处于文件尾部,返回false. 函数object.c_str();将字符串转换成字符数组,返回指针. 其它函数的使用请参照程序. // test_max.cpp : 定义控制台应用程序的入口点. // #inclu

Winform读取文档。然后创建,奇数行保存一个文档,偶数行保存一个文档

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.IO;using System.Text.RegularExpressions; namespace TextModify

一个导入到本地读取文档的方法

一个导入到本地读取文档的方法 在网页上看到, 发现了一个比较好的插件 简悦 , 可以通过其中的一个功能, 下载为 markdown 文件. 发现是一个很不错的功能. 本来想去找一下, 有没有类似的 书签记录, 类似vim中的mark功能 但 vim 插件感觉有些重, 并且影响好多的快捷键操作. 原文地址:https://www.cnblogs.com/asdfq/p/10994197.html

scala学习三---文件里读取文本行

学习了scala的基本知识后,发现了scala是集函数式和指令式结合为一体的一种语言,代码更加简洁,但是对于用习惯了java的人来说,还真的不是一件易事~~ 今天学习scala脚本读取文本文件 列子如下: import scala.io.Source if(args.length>0){ for(line <- Source.fromFile(args(0)).getLines) print(line.length+" "+line) }else{ Console.err.

Aspose.Words使用教程之在文档中找到并替换文本

Aspose.Words使用教程之在文档中找到并替换文本 Aspose.Words是一款先进的文档处理控件,在不使用Microsoft Words的情况下,它可以使用户在各个应用程序中执行各种文档处理任务,其中包括文档的生成.修改.渲染.打印,文档格式转换和邮件合并等文档处理.此外,Aspose.Words支持DOC,OOXML,RTF,HTML,OpenDocument, PDF, XPS, EPUB和其他格式. 使用范围:在前的范围内替换查找或替换特定的字符串,因为它会返回替换的数量,所以它

Aspose.Words使用教程之如何写入纯文本(TXT)文件

Aspose.Words可以通过使用[Document]构造函数和其他文档格式一样输入纯文本数据. Example 输入一个纯文本文件到一个Aspose.Words文档对象里面. C# using System;   using System.IO;   using System.Reflection;using System.Text; using Aspose.Words; namespace LoadTxt   {   class Program   {   public static v