c#读取excel表名讨论
不知大家可曾试过讲EXCEL文件当做数据库文件来读,我实用一下方法获取excel文件中所有表名public static DataTable GetExcelTableName(string p_ExcelFile)
{
try
{
if (System.IO.File.Exists(p_ExcelFile))
{
OleDbConnection _ExcelConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=/"Excel 8.0/";Data Source=" + p_ExcelFile);
_ExcelConn.Open();
DataTable _Table = _ExcelConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
_ExcelConn.Close();
return _Table;
}
return null;
}
catch
{
return null;
}
}
但结果中除包括表名外,还有个表名+$的名字,姑且叫做把前者叫做假名,后者叫做真名,请问我如何区分开这两个名字,我试过好像这两个名字经常一起出现,但有时也会单独出现,如果只是判断表名是否是以字符$结尾,我想意义不大,毕竟我们可以把假名里也添加$字符。
请大家指点 --------------------编程问答--------------------
你想取唯一那就不要用Ado来读呀,用Office Excel组件来读取他的Sheet。这没什么好讨论的结贴。 --------------------编程问答-------------------- 是的,你用ado.net来读excel,会有$符号。如果用office组件读sheet名,没有$符号的,楼主可以试一试。 --------------------编程问答-------------------- ado.net出来的结果就不能二次处理后得出正确结果?
补充:.NET技术 , C#