我需要读取一个由输入分隔的文本文件,即每一行都有一个新条目。
例如
101153,E006,"\n"
101153,E016,"\n"
101153,E026,"\n"
101153,E035,"\n"
101153,N006,"\n"
101153,N016,2
我怎样才能在数据集中读取这些记录。?
这是我的代码片段:如何读取由 netr 分隔的文本文件
string[] dataFile = Directory.GetFiles(fullPath);
DataSet ds = new DataSet();
DataTable dt = ds.Tables.Add();
DataRow dr;
dt.Columns.Add("column1");
dt.Columns.Add("column2");
dt.Columns.Add("column3");
if (dataFile.Count() > 0)
{
for (int x = 0; x < dataFile.Count(); x++)
{
using (StreamReader sr = new StreamReader(dataFile[x]))
{
while (sr.Peek() != -1)
{
string[] fields;
fields = sr.ReadLine().Split(',');
if (fields.Count() == 3) // 3 columns
{
dr = dt.NewDataRow();
dr["column1"] = fields[0];
dr["column2"] = fields[1];
dr["column3"] = fields[2];
dt.Rows.Add(dr);
}
}
}
}
}
ds.Tables.Add(dt);
要将其加载到数据集中,您必须执行以下步骤。
创建一个新的DataTable
. 然后DataColumns
为DataTable
.
然后逐行读取文本文件并将行拆分并插入到DataTable
. 您可以使用该String.Split
方法来分割行,
。
http://msdn.microsoft.com/en-us/library/system.data.datatable.aspx上的代码包含帮助加载DataSet
.
有关读取文件,请参阅http://msdn.microsoft.com/en-us/library/vstudio/ezwyzy7b.aspx。