Tôi đang làm việc trên một số mã C++ tích hợp thông tin từ khoảng vài chục tệp csv. Tất cả chúng đều chứa một số dữ liệu bản ghi được đóng dấu thời gian tôi muốn trích xuất, nhưng biểu diễn có phần khác nhau trong mỗi tệp. Sự khác biệt giữa các biểu diễn vượt ra ngoài các thứ tự cột và tên cột khác nhau - ví dụ, một hàng có nhiều cột trong một tệp có thể là nhiều hàng trong một tệp khác.Các mẫu thiết kế để tổng hợp dữ liệu dạng bảng không đồng nhất
Vì vậy, tôi cần xử lý tùy chỉnh cho từng tệp để tập hợp cấu trúc dữ liệu thống nhất bao gồm thông tin cần thiết từ tất cả các tệp. Câu hỏi của tôi là liệu có một mẫu mã ưa thích để giữ sự phức tạp quản lý và mã thanh lịch? Hoặc nếu có một nghiên cứu điển hình tốt tôi nên kiểm tra để xem cách xử lý sự phức tạp này trong quá khứ.
(Tôi nhận ra một cái gì đó như thế này có thể dễ dàng hơn trong một ngôn ngữ kịch bản như perl, nhưng bây giờ dự án đang ở trong C++. không phải là quá cụ thể về ngôn ngữ.)
Bạn có thể muốn xem một số loại dữ liệu của mình ... – ltjax
Tại gốc của nó, tất cả dữ liệu nguồn có xấp xỉ giống nhau mặc dù các biểu diễn khác nhau không?Và bạn có biết trước khi mở tệp có định dạng trong đó hay không, bạn có phải đọc hàng tiêu đề trước không? –
Tôi biết định dạng apriori, mặc dù không có cách dễ dàng để suy luận theo cấu trúc từ tiêu đề (các quy ước được sử dụng để đặt tên cột và định dạng ngày khác nhau, và trong một số trường hợp, cấu trúc hàng/cột khác nhau giữa các tệp theo ví dụ được đề cập). – daj