C#如何读取txt文本数据?

数据以空格隔开,且空格数量不等如何将其中数据导入DataTable?跳过前两行*开头的,后面还有其他字符... 数据以空格隔开,且空格数量不等

如何将其中数据导入DataTable?
跳过前两行*开头的,后面还有其他字符
展开
 我来答
freeeeeewind
推荐于2017-12-16 · TA获得超过1万个赞
知道大有可为答主
回答量:3227
采纳率:94%
帮助的人:1337万
展开全部

下面的控制台应用程序实现要求的功能

using System;
using System.IO;
using System.Data;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            // 新建一个DataTable
            DataTable tb = new DataTable();
            // 添加一列用于存放读入的浮点数
            DataColumn c= tb.Columns.Add("Value", typeof(double));

            // 打开文件准备读取数据   
            StreamReader rd = File.OpenText(@"d:\data.txt");
            string line;
            // 循环读出文件的每一行
            while ((line = rd.ReadLine()) != null)
            {
                // 拆分出一行的所有用空格分割的数据项
                string[] values = line.Split(' ');
                // 将每个数据项转换成浮点数,并存入DataTable
                foreach (string s in values)
                {
                    if (!string.IsNullOrEmpty(s))
                    {
                        // 转换成浮点数
                        double v = double.Parse(s);
                        // 存入DataTable
                        DataRow r = tb.NewRow();
                        r["Value"] = v;
                        tb.Rows.Add(r);
                    }
                }
            }
            rd.Close();
             //输出DataTable中保存的数组
            foreach (DataRow r in tb.Rows)
            {
                Console.WriteLine(r["Value"]);
            }
        }
    }
}

D:\Data.Txt内容为

程序运行结果

追问
非常感谢!
不过这每一列数字都不一样啊,期望的显示效果不是这样的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式