這是兩個結構相同的 csv 檔案(A 和 B)。兩者都使用KEY_A、KEY_B和KEY_C作為主鍵,兩者有不同的記錄。
使用Java以三種方式比較兩個文件,並將結果分別寫入新的csv文件。 1. 找到主鍵相等而其他欄位值不相等的記錄,輸出其主鍵,然後輸出A的其他欄位和B的其他欄位。以下是預期結果:
編寫SPL程式碼來進行這三個比較。以下是第一次比較:
T()函數解析csv檔案或將資料寫入csv檔案;@c 選項允許使用遊標從無法裝入記憶體的檔案中擷取資料。 sortx() 函數對遊標中的資料進行排序。 joinx() 函數執行合併連線。 merge() 函數合併記錄;@d 選項可以找到差異。
閱讀如何在 Java 中呼叫 SPL 腳本,以了解如何將 SPL 整合到 Java 應用程式中。
這是 StackOverflow 上的問題之一。你可以點擊查看,傳統的解決方案相當複雜,但 SPL 方法確實簡單有效率。
SPL開源位址
以上是比較大型 csv 檔案 #eg38的詳細內容。更多資訊請關注PHP中文網其他相關文章!