我正在研究一个项目,基本上就是下面的文字流程 阅读2个Csv文件 逐行比较其内容 识别不同的行,即使是列 创建一个新的Csv文件以包含差异
遇到的问题:
我怀疑它是一个连接字符串错误
我正在使用这个字符串:
connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileDirectory + ";Extended Properties=\"Text;HDR= Yes;FMT = Delimited\"";
Oledbconnection Connection = new OleDbConnection(connectionString);
OleDbDataAdapter Adapter = new OleDbDataAdapter("select * from [" + Filesheet + "$]", Connection);
我使用的是Oledbconnection方法,有更高效的方法吗? 没有存储将是更可取的
如何运行程序,以便自动访问 文件,文件包含在2个不同的文件夹中并进行比较 逐个文件,因为到目前为止我只设法做一个特定的文件阅读
你们有更好的替代方法来解决这个问题吗?
答案 0 :(得分:1)
我从未尝试使用连接字符串打开csv文件。
CSV文件基本上只是由\ n(或\ r \ n)和列by(或其他)的行分隔。
所以我个人所做的通常是使用TextReader打开它 - 并执行以下操作
foreach (string row in textString.Split('\n')
{
foreach (string cell in row.Split(',')
{
//One cell at a time
}
}
有用于打开csv文件的库,但我发现这是最简单的。
3。)好吧,你必须使用不同的文件“两次”运行代码。如果他们是硬编码使用数组 - 或者你可以弹出一些OpenFileDialog来要求用户选择它们
否则在理解您的问题时会遇到问题。
答案 1 :(得分:0)