很快,我正在尝试将csv文件导入datatable。 我正在添加像这样的列
DataTable data = new DataTable();
data.Columns.Add("ID",typeof(string));
data.Columns.Add("Name",typeof(string)).MaxLength = 150;
data.Columns.Add("Last name",typeof(string));
然后:
using (var reader = new StreamReader(file.InputStream))
{
DataRow row;
var headers = reader.ReadLine();
while (!reader.EndOfStream)
{
string line = reader.ReadLine();
string[] value = line.Split(',');
if (value.Length == data.Columns.Count)
{
row = data.NewRow();
row.setfield(0,ParseInt(value[0]));
row.setfield(1,value[1]);
row.setfield(2,value[2]);
//and so on
}
如果硬编码的标头与导入的文件相同,请提供一种有助于验证标头的方法吗? PS对长度的验证效果不好。有时,如果CSV中的最后一列为空,则不计算最后一列。