using System.Data.SqlClient;
using System.IO;
namespace Common
{
class Common
{
// CSVToDataTable 读去CSV文件到DataTable变量中的方法
// CSVToDataTable 读去CSV文件到DataTable变量中的方法
public static int CSVToDataTable(string strFilePath,ref DataTable resultTable)
{
try
{
string strLine;
string[] aryLine;
// CSV file's path check
if (!File.Exists(strFilePath))
return -1;
StreamReader sReaderTmp = new StreamReader(strFilePath, System.Text.Encoding.Default);
strLine = sReaderTmp.ReadLine();
resultTable.Columns.Clear();
aryLine = strLine.Split(',');
foreach (string strFildData in aryLine)
{
DataColumn dColumnTmp;
if(strFildData.Equals("ID"))
dColumnTmp = new DataColumn(strFildData, typeof(System.Int32));
else
dColumnTmp = new DataColumn(strFildData, typeof(System.String));
resultTable.Columns.Add(dColumnTmp);
}
DataRow dRowTmp;
int nCountColumns = resultTable.Columns.Count;
while (!sReaderTmp.EndOfStream)
{
strLine = sReaderTmp.ReadLine();
aryLine = strLine.Split(',');
// Columns's count check
if (aryLine.Length != nCountColumns)
continue;
dRowTmp = resultTable.NewRow();
for (int nColIndex = 0; nColIndex < aryLine.Length; nColIndex++)
dRowTmp[nColIndex] = aryLine[nColIndex];
resultTable.Rows.Add(dRowTmp);
}
sReaderTmp.Close();
}
catch (Exception ex)
{
return -1;
}
return 1;
}
}
}
一些通用方法,为了方便以后的拷贝使用(C#2005)
最新推荐文章于 2024-06-12 09:46:16 发布
本文介绍了一个将CSV文件转换为DataTable的方法。此方法首先检查CSV文件是否存在,然后读取文件的第一行来确定列名和类型,并创建相应的DataTable结构。之后逐行读取数据并填充到DataTable中。
1109

被折叠的 条评论
为什么被折叠?



