C# ado.net 导入Excel中文出现乱码,求解决办法

MR.老刘 MR.老刘 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
以下是读取的代码:

List<string> cols = new List<string>();

OleDbConnection conn = new OleDbConnection(string.Format(ExcelConnstring, fileName, "Excel 8.0;HDR=Yes;IMEX=1"));//处理Excel数据类型和文本类型不确定时
conn.Open();
//返回Excel的架构,包括各个sheet表的名称,类型,创建时间和修改时间等
DataTable dtSheetName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });
//取到第一个表的表名
string strTableName = dtSheetName.Rows[0]["TABLE_NAME"].ToString();
OleDbDataAdapter myCommand = null;
string strSelect = "select * from [" + strTableName + "]";
myCommand = new OleDbDataAdapter(strSelect, conn);
string dataTableName = Path.GetFileNameWithoutExtension(fileName);

this.DataSetImportCell.Tables.Clear();
myCommand.Fill(DataSetImportCell, dataTableName);
myCommand.Dispose();

foreach (DataColumn temp in DataSetImportCell.Tables[dataTableName].Columns)
{
cols.Add(temp.ColumnName);
}
conn.Close();

读取出来的数据,中文出现乱码,但是还有一个现象,我将这个excel另存为07的格式,然后再另存为xls回来,再读取就正常了,求怎么在代码中解决这个问题。谢谢,很着急!
...全文

相关推荐

评论 2
收藏 已收藏
分享
返回顶部
MR.老刘
C# 111,128 成员 642,537 内容