gpt4 book ai didi

c# - 使用 Jet 读取 CSV 文件 - 制表符分隔不起作用!

转载 作者:太空宇宙 更新时间:2023-11-03 14:32:16 24 4
gpt4 key购买 nike

这让我很难受 - 我有一个大文件需要作为数据表读入。

经过一番折腾之后,我正在使用这个:

using (OleDbConnection connection = new OleDbConnection(connString))
{
using (OleDbCommand command = new OleDbCommand(sql, connection))
{
using (OleDbDataAdapter adapter = new OleDbDataAdapter(command))
{
dataTable = new DataTable();
dataTable.Locale = CultureInfo.CurrentCulture;
adapter.Fill(dataTable);
}
}
}

如果文本文件以逗号分隔则有效,但如果以制表符分隔则无效 - 任何人都可以帮忙吗??

我的连接字符串看起来像:

string connString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+ pathOnly + @";Extended Properties='text;HDR=YES'";

我曾尝试设置 FMT 属性,但没有成功....

最佳答案

这是一个很好的库,可以使用它。

http://www.codeproject.com/KB/database/CsvReader.aspx

这是使用该库的代码。

TextReader tr = new StreamReader(HttpContext.Current.Server.MapPath(Filename));
string data = tr.ReadToEnd();
tr.Close();

逗号分隔;

CachedCsvReader cr = new CachedCsvReader(new StringReader(csv), true);

用于制表符分隔;

CachedCsvReader cr = new CachedCsvReader(new StringReader(csv), true, '\t');

在这里你可以通过这段代码将它加载到DataTable

DataTable dt = new DataTable();
dt.Load(cr);

希望对您有所帮助。谢谢

关于c# - 使用 Jet 读取 CSV 文件 - 制表符分隔不起作用!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2328406/

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