gpt4 book ai didi

c# - 如何在 .Net 中使用 OleDB 以我想要的格式从 CSV 导入值?

转载 作者:行者123 更新时间:2023-11-30 15:13:14 25 4
gpt4 key购买 nike

我有一个 CSV 文件,其中有一列包含看起来像整数的字符串。也就是说,它们应该作为字符串处理,但由于它们是数字,因此它们似乎是作为整数导入的(去掉前导零)。

示例数据:

  • 0000000000079
  • 0000999000012
  • 0001002000005
  • 0004100000007

我看到的问题是最后一个示例数据点作为 DBNull.Value 出现。我假设这是因为 OleDB 将该列视为整数(数据点也没有前导零)并且 0004100000007 大于最大整数值。

有什么方法可以说“第 [0] 列是一个字符串,不要将其作为整数读取”?什么时候读取数据?

我目前使用的代码是:

OleDbConnection dbConn = new OleDbConnection(SourceConnectionString);
OleDbCommand dbCommand = new OleDbCommand("SELECT * FROM test.csv", dbConn);
dbConn.Open();
OleDbDataReader dbReader = dbCommand.ExecuteReader();

while (dbReader.Read())
{
if (dbReader[0] != DBNull.Value)
{
// do some work
}
}

最佳答案

当您需要将列作为字符串读取时,请尝试在读取器中使用 GetString() 方法:

string myStringValue = reader.GetString(0);

关于c# - 如何在 .Net 中使用 OleDB 以我想要的格式从 CSV 导入值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/237763/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com