回答
你看的下一行以下鏈接?
如果沒有,那麼你應該。
herbalessence-我嘗試了上面鏈接中給出的linq方法。但對於有50000條記錄的csv,需要30秒才能返回結果。所以我試着用第二個鏈接給出的hashset,它只需要2 300毫秒到2秒。謝謝 – Vishnu 2011-03-02 07:13:26
@Anish:歡迎:-) – 2011-03-02 07:47:32
不,沒有使用循環是沒有辦法的。您如何期望任何比較算法在不使用循環的情況下迭代文件的字符/單詞/標記/行?
- 嘗試分割文件分成行
- 在循環
- 分割各行作爲
List<string>
或作爲陣列 - 比較:
無論如何,假設兩個CSV是由一個ID列排序這兩個文件的列表(忽略尾隨空列等)
- 當找到數據列的差異時將包含差異的新行保存到一個
List<List<string>>
- 當發現不同的ID,比較這兩個ID:具有較小ID保存行(其中標識附加行),並獲得該文件
- 分割各行作爲
多少信息,你需要了解有什麼不同?如果你所需要的只是事實,他們是不同的,並且沒有循環的要求已經修復,你可以嘗試採用MD5散列並比較兩個散列。如果你不關心的內存使用情況,你可以只轉儲整個流爲MemoryStream
呼叫Getbytes
,然後將兩個數組傳遞到Enumerable.SequenceEqual
private static byte[] GetFileHash(string filename)
{
using(var stream = new FileStream(filename, FileMode.Open))
{
var md5Hasher = new MD5CryptoServiceProvider();
return md5Hasher.ComputeHash(stream);
}
}
var file1hash = GetFileHash("file1.ext");
var file2hash = GetFileHash("file2.ext");
var areEqual = Enumerable.SequenceEqual(file1hash, file2hash);
現在有循環使用,只是不是你。
- 1. 在C中比較兩個csv文件#
- 2. 比較兩個CSV文件,
- 3. 比較兩個csv文件中的列
- 4. 比較兩列CSV文件
- 5. Python比較兩個csv文件
- 6. 如何比較兩個.csv文件?
- 7. 比較兩個CSV文件的Python
- 8. Python CSV比較兩個文件?
- 9. 比較csv文件中的兩行 - Python
- 10. 比較c中的兩個文件
- 11. 使用CSV文件比較追加CSV
- 12. 使用一列比較兩個csv
- 13. 使用diff命令比較兩個csv文件的特定列
- 14. 如何比較兩個CSV文件,並使用PowerShell
- 15. C# - 比較兩個CSV文件並給出輸出
- 16. 在Python中比較兩個CSV
- 17. 如何在Python中比較兩個csv文件
- 18. 在shell腳本中,如何比較兩個csv文件?
- 19. 比較兩個CSV文件並生成第三個文件
- 20. 比較csv文件
- 21. 使用比較對象比較Powershell中的csv文件
- 22. 比較兩個文件使用Java
- 23. 使用python比較兩個文件3
- 24. 使用Perl比較兩個文件
- 25. 比較兩個大文件使用awk
- 26. C#比較兩個XML文件
- 27. 比較兩個文件c代碼
- 28. C#:比較兩個xml文件
- 29. C# - 使用兩個.txt文件比較/替換文本
- 30. 比較兩個excel文件和CSV文件的方法
你需要什麼格式的差異? – Oded 2011-03-01 12:16:11
如果你需要不同的數據,比你需要。如果您只需要知道文件是否不同於 – Stecya 2011-03-01 12:16:43
將兩個csv文件讀入列表中,然後應用Linq設置操作 – 2011-03-01 12:16:58