急!急!急!为什么导入csv的就这么慢?
我导入三种格式的,Excel,Access,csv,为什么就csv的就比其他的要慢,而且是慢很多。为什么?
/// <summary>
/// 获得状态值得到连接语句
/// </summary>
/// <returns></returns>
public string GetConnStr()
{
if (TypeStates == 1)
return "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + PathStr;
else if (TypeStates == 2)
return "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + pathStr + ";Extended Properties=Excel 8.0;";
else if (TypeStates == 3)
return "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Directory.GetParent(pathStr) + ";Extended Properties='Text;FMT=Delimited;HDR=YES;'";
else
return "";
}
//获得所有的表名
public List<string> GetTableName()
{
string connString = GetConnStr();
OleDbConnection conn = new OleDbConnection(connString);
List<string> list = new List<string>();
conn.Open();
DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
int n = dt.Rows.Count;
string[] tableName = new string[n];
int m = dt.Columns.IndexOf("TABLE_NAME");
for (int i = 0; i < n; i++)
{
DataRow dr = dt.Rows[i];
tableName[i] = dr.ItemArray.GetValue(m).ToString();
list.Add(tableName[i].ToString());
}
conn.Close();
return list;
}
//获得字段名
public DataTable GetTableColumn()
{
string connString = GetConnStr();
OleDbConnection conn = new OleDbConnection(connString);
List<string> list = new List<string>();
DataTable dt = new DataTable();
try
{
conn.Open();
dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new object[] { null, null, TableName, null });
}
catch (Exception ex)
{
throw ex;
}
finally
{
conn.Close();
}
return dt;
}
--------------------编程问答--------------------
--------------------编程问答--------------------
求高手帮忙看看
补充:.NET技术 , ASP.NET