如何将文本文件读入DataTable [英] How to Read text file to DataTable

查看:140
本文介绍了如何将文本文件读入DataTable的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想从txt文件中提取数据并将其放入DataTable中。 txt文件中的内容采用以下格式:

I would like to extract data from a txt file and put it into a DataTable. The content in the txt file is in the following format:


sometext1:sometext2:sometext3
sometext4:sometext5 :someext6

sometext7:sometext8:sometext9
...

sometext1:sometext2:sometext3
sometext4:sometext5:sometext6
sometext7:sometext8:sometext9
...

每个行代表一行,每列用:字符分隔。

Each line represents a row and every column is separated with ":" character.

我尝试这样做:

            DataTable tbl = new DataTable();

            using (StreamWriter sw = File.CreateText(path))
            {
                string[] rows = content.Split('\n');
                foreach (string s in rows)
                {
                    string[] columns = s.Split(':');
                    foreach (string t in columns)
                    {
                        sw.WriteLine(t);
                    }

                }
            }

我读了这个文件并将其添加到DataTable?

How can I read this file and add it to DataTable?

推荐答案

这是一个简单的方法来做你的工作

This is a simple method to do your job

public DataTable ConvertToDataTable (string filePath, int numberOfColumns)
{
    DataTable tbl = new DataTable();

    for(int col =0; col < numberOfColumns; col++)
        tbl.Columns.Add(new DataColumn("Column" + (col+1).ToString()));


    string[] lines = System.IO.File.ReadAllLines(filePath);

    foreach(string line in lines)
    {
        var cols = line.Split(':');

        DataRow dr = tbl.NewRow();
        for(int cIndex=0; cIndex < 3; cIndex++)
        {
           dr[cIndex] = cols[cIndex];
        }

        tbl.Rows.Add(dr);
    }

    return tbl;
}

这篇关于如何将文本文件读入DataTable的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆