我在用c# 读取OleDbConnection.GetOleDbSchemaTable获取表格结构信息,输出表格sheet名称时输出大致为:
统计指标$;
统计指标$_ESF1498;
统计指标$_ESF1499;
统计指标$_ESF1500;
统计指标$_ESF1501;
统计指标$_EST229;
我只想要"统计指标$",不知道为什么多出来这么多张表,哪位能帮忙解决一下??
我的部分代码如下,也是从网上得到的:
using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet." + "OLEDB.4.0;Extended Properties=\"Excel 8.0\";Data Source=" + path))
{ conn.Open(); System.Data.DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });
String tableName = "";
System.Console.WriteLine(dt.Rows.Count);//就是这里会多出很多行
for (int i = 0; i < dt.Rows.Count; i++)
{ tableName += dt.Rows[i]["TABLE_NAME"].ToString() + ";"; System.Console.WriteLine(tableName);
tableName = "";
}
}
统计指标$;
统计指标$_ESF1498;
统计指标$_ESF1499;
统计指标$_ESF1500;
统计指标$_ESF1501;
统计指标$_EST229;
我只想要"统计指标$",不知道为什么多出来这么多张表,哪位能帮忙解决一下??
我的部分代码如下,也是从网上得到的:
using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet." + "OLEDB.4.0;Extended Properties=\"Excel 8.0\";Data Source=" + path))
{ conn.Open(); System.Data.DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });
String tableName = "";
System.Console.WriteLine(dt.Rows.Count);//就是这里会多出很多行
for (int i = 0; i < dt.Rows.Count; i++)
{ tableName += dt.Rows[i]["TABLE_NAME"].ToString() + ";"; System.Console.WriteLine(tableName);
tableName = "";
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货