码迷,mamicode.com
首页 > Windows程序 > 详细

C#读取txt文件

时间:2017-08-23 20:07:08      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:logs   count   line   lin   ret   数据   move   har   file   

       用C#读取txt文件时,当txt中数据的分隔符是空格,而且空格数量不等时,如果直接用Split直接对每行进行分隔,那么list的数目会比每行的列数多,并不是真实的每行的列数。这时要把不等数目的空格全变成1个空格,这样计数才正确。代码如下:

public static List<string>split(string s,char splitchar= )
{
return s.Split(splitchar).Select(p=>p.Trim()).Where(p=>p.Length>0).ToList();
}

我的程序是这样子的:

using (StreamReader sr = new StreamReader(filePath)) 
{
   string line;
   while ((line = sr.ReadLine()) != null) 
   {
      if (i == int.Parse(textBox1.Text)-1)
      {
       List<string> dataItems=line.Split( ).Select(p => p.Trim()).Where(p => p.Length > 0).ToList();
       double angleX = (double.Parse(dataItems[dataItems.Count - 1])) * pi / 180;
       //ArrayList dataItems2 = new ArrayList(dataItems);
       dataItems.Remove(dataItems2[dataItems.Count - 1]);

        还存在一个问题是如果列表形式为string[]dataItems,则没有删除列表中某一元素的操作,需将dataItems转换为ArrayList dataItems1。如果为List<string>dataItems,则可直接用dataItems.Remove(dataItems[dataItems.Count])来删除某一元素。

 

C#读取txt文件

标签:logs   count   line   lin   ret   数据   move   har   file   

原文地址:http://www.cnblogs.com/yxq1263/p/7419756.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!