c# - OleDb 忽略以 0 开头的文本
问题描述
我正在使用 OleDbDataAdapter
我正在尝试将数据从 excel 获取到 DataTable,这是我的代码;
var conn = new OleDbConnection(strConn);
var myCommand = new OleDbDataAdapter(" SELECT * FROM [UPLOADFILE$] ", strConn);
var inputTable = new DataTable();
try
{
myCommand.Fill(inputTable);
}
这是我的Conn Str;
"Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + "MyPath" + ";" +
"Extended Properties=\"Excel 8.0;IMEX=1;TypeGuessRows=0;ImportMixedTypes=Text\"";
不知何故,它消除了以“0”开头的字符串,但其他都可以。
我也使用了以下组合;
"Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + "MyPath" + ";" +
"Extended Properties=\"Excel 8.0;IMEX=0;TypeGuessRows=0;ImportMixedTypes=Text\"";
"Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + "MyPath" + ";" +
"Extended Properties=\"Excel 8.0;HDR=No;IMEX=1;TypeGuessRows=0;ImportMixedTypes=Text\"";
"Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + "MyPath" + ";" +
"Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1;TypeGuessRows=0;ImportMixedTypes=Text\"";
提前致谢!
我的尝试;
Excel 8.0;HDR=No;IMEX=1;
解决方案
对于它的价值,这是我通过 OleDb 读取 excel 的首选连接字符串。
strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +
filename + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'; ";
对于它的价值,我在一些数据上进行了尝试,当我的文本带有前导零时没有任何问题。
您的数据是在表格中还是只是一个标准范围?它有标题吗?你能展示一些出错的样本数据吗?
推荐阅读
- reactjs - Redux-React 编程实践
- regex - 删除文本并仅显示部分答案
- c - 在C中的堆栈上分配一个大数组
- netlogo - 如何使用 Moore 和 Von Nuemman 示例中的代码将邻居函数扩展到 24
- java - 如何使用 Spring 设置 RESTful API
- excel - 分页符落在错误的行上
- python - 无法使用下拉选择器更新仪表板应用程序中的图表
- swift - 点击远程通知后导航栏丢失
- php - Stripe PHP Webhook 测试 TLS 错误和 502 错误
- javascript - 一个关于属性 type='date' 的 HTMLInputElement 及其 Native Date Picker 的问题