Tiếng Việt

Cách xóa tệp CSV lộn xộn

Mở trình dọn dẹp CSV và tải tệp có dấu phân cách ở chế độ tự động phát hiện. Trước tiên, hãy kiểm tra số hàng và số cột: nếu số cột là 1 thì dấu phân cách sai và việc đặt thành dấu chấm phẩy hoặc tab thường sửa được toàn bộ tệp.

Sau đó, xử lý các cảnh báo của trình phân tích cú pháp, đặt tên cho các số hàng cụ thể, trước khi bạn chạm vào dữ liệu. Làm sạch rồi xuất dưới dạng CSV hoặc JSON. Mọi thứ đều chạy trong một trình chạy trong trình duyệt của bạn; các hàng không bao giờ được tải lên.

Tại sao xuất khẩu đến nơi bị hỏng

CSV là một nhóm quy ước chứ không phải là định dạng. Hai ứng dụng đều có thể yêu cầu hỗ trợ CSV và không đồng ý về dấu phân cách, kiểu trích dẫn, kết thúc dòng và mã hóa ký tự.

Dấu phân cách là điều ngạc nhiên phổ biến nhất. Phần mềm được bán ở những quốc gia sử dụng dấu phẩy làm dấu phân cách thập phân thường xuất các tệp được phân tách bằng dấu chấm phẩy vì dấu phẩy đã bị chiếm dụng. Những tệp đó vẫn kết thúc bằng .csv và một công cụ giả định dấu phẩy sẽ thu gọn mọi hàng thành một cột duy nhất.

Mã hóa là thứ hai. Tệp UTF-8 thường bắt đầu bằng dấu thứ tự byte ba byte vô hình. Excel trên Windows sử dụng nó để nhận dạng UTF-8; nhiều công cụ khác không mong đợi điều đó, vì vậy nó được dán vào tên tiêu đề đầu tiên và một cột có tên id âm thầm trở thành một cột mà không tra cứu nào sánh được.

Chẩn đoán bằng ba số

Tính năng tự động phát hiện sẽ phân tích cú pháp một mẫu với từng dấu phân cách ứng viên và chọn mẫu tạo ra kết quả hình chữ nhật nhất quán nhất, đó là lý do tại sao nó không bị đánh lừa bởi dấu phẩy bên trong các trường được trích dẫn của tệp được phân tách bằng dấu chấm phẩy. Hầu hết mọi trường hợp đều đúng; bản xem trước sẽ cho bạn biết khi nào thì không.

  • Số cột. Nếu là 1 thì dấu phân cách sai. Hãy thử dấu chấm phẩy, sau đó nhấn tab.
  • Số hàng. Nếu nó cao hơn nhiều so với dự kiến, thì tệp có thể chứa các dòng mới được trích dẫn mà nội dung nào đó ở thượng nguồn đã đọc sai.
  • Số lượng cảnh báo Mỗi cảnh báo đặt tên cho một số hàng, được tính theo cách đếm của trình soạn thảo văn bản, vì vậy bạn có thể vào và xem.

Đọc các cảnh báo

Hàng rách có nghĩa là hàng có số ô khác với tiêu đề. Không có gì bị loại bỏ để làm gọn lưới: các hàng ngắn được đệm bằng các khoảng trống và các hàng dài giữ lại các giá trị bổ sung của chúng. Âm thầm xóa dữ liệu của ai đó để làm cho một bảng trông có vẻ hình chữ nhật là điều tồi tệ nhất mà một công cụ dọn dẹp có thể làm nên nó không được thực hiện.

Trích dẫn không được đóng có nghĩa là trích dẫn kép đã được mở và không bao giờ đóng, vì vậy mọi thứ sau khi trích dẫn được đọc dưới dạng một trường khổng lồ. Đây gần như luôn là lỗi thực sự ở nguồn và cần sửa nơi tệp được tạo ra thay vì vá ở phần sau.

Công cụ sẽ báo cáo những điều này thay vì sửa chữa chúng vì cả hai trường hợp đều có thể có một số cách khắc phục chính xác và chỉ bạn mới biết cách nào áp dụng.

Làm sạch theo đúng thứ tự

Theo mặc định, tính năng xuất an toàn khi tiêm công thức được bật và là lựa chọn duy nhất ở đây gây ra hậu quả bảo mật thực sự. Một ô bắt đầu bằng =, +, - hoặc @ được các ứng dụng bảng tính coi là công thức, do đó, một giá trị đến từ một nguồn không đáng tin cậy có thể thực thi khi ai đó mở tệp của bạn. Quá trình xuất an toàn sẽ đặt trước các ô đó một dấu nháy đơn, điều này sẽ ngăn chúng tính toán — bao gồm bất kỳ ô nào bạn định tính toán, vốn là để giảm nhẹ chứ không phải là lỗi.

  1. Cắt bớt khoảng trắng trước. Hai hàng chỉ khác nhau bởi một khoảng trắng ở cuối sẽ không trùng lặp cho đến khi bạn cắt bớt chúng.
  2. Loại bỏ các hàng trùng lặp thứ hai. Lần xuất hiện đầu tiên được giữ nguyên nên thứ tự tồn tại không thay đổi.
  3. Đổi tên tiêu đề và chọn các cột để xuất.
  4. Sắp xếp nếu bạn cần. Các cột số được phát hiện và sắp xếp theo số, vì vậy 9 xuất hiện trước 10.
  5. Kiểm tra các tùy chọn xuất trước khi tải xuống, đặc biệt là cài đặt chèn công thức.

Chọn mã hóa xuất

BẬT dấu thứ tự byte UTF-8 nếu tệp được dành cho Excel trên Windows, sử dụng tệp này để phát hiện mã hóa; không có nó, các ký tự có dấu và chữ viết không phải tiếng Latinh có thể xuất hiện dưới dạng mojibake khi nhấp đúp.

Để lại OFF nếu tệp cung cấp tập lệnh, nhập cơ sở dữ liệu hoặc chương trình khác vì một số trình phân tích cú pháp nghiêm ngặt coi dấu là dữ liệu.

Ví dụ đã hoạt động: xuất 12,000 hàng mở dưới dạng một cột

Dữ liệu xuất của khách hàng từ CRM Châu Âu sẽ mở trong trình chỉnh sửa của bạn dưới dạng 12,000 hàng và một cột duy nhất. Hàng tiêu đề ghi Tên;Email;Quốc gia;Ngày đăng ký.

  1. Tải tệp. Tự động phát hiện báo cáo 4 cột; nếu không, hãy đặt dấu phân cách thành dấu chấm phẩy theo cách thủ công.
  2. Đọc cảnh báo: giả sử 3 hàng rách rưới tại 418, 2,905 và 7,110.
  3. Hãy nhìn vào ba hàng đó. Chúng chứa dấu chấm phẩy không thoát bên trong tên công ty — các ô bổ sung được giữ lại nên không có gì bị mất.
  4. Cắt bớt khoảng trắng, sau đó loại bỏ các bản sao.
  5. Xuất dưới dạng CSV với dấu phẩy làm dấu phân cách và bật dấu thứ tự byte vì tệp sẽ được chuyển tới đồng nghiệp sử dụng Excel.

Result: Tệp UTF-8 được phân tách bằng dấu phẩy có dấu thứ tự byte, bốn cột và các hàng trùng lặp đã biến mất. Ba hàng vấn đề vẫn còn nguyên các ô bổ sung, được gắn cờ để bạn sửa tại nguồn thay vì xóa để bảng gọn gàng hơn.

Mở công cụ

Làm sạch CSV trong trình duyệt của bạn

Phân tích cú pháp trong Web Worker trên thiết bị của bạn, lưu giữ mọi ô mà nó tìm thấy và báo cáo các vấn đề mà nó không đoán được.

Điều này không bao gồm những gì

  • Toàn bộ tệp được giữ trong bộ nhớ điện thoại của bạn. Giới hạn là 50 MB và điện thoại sẽ hoạt động tốt trước máy tính xách tay.
  • Chỉ 100 hàng đầu tiên được hiển thị trong bản xem trước, mặc dù mỗi hàng đều được làm sạch và xuất.
  • Việc phát hiện mã hóa bị giới hạn ở dấu thứ tự byte UTF-8. Tệp được lưu dưới dạng Windows-1252 hoặc Shift-JIS được đọc dưới dạng UTF-8 và có thể hiển thị các ký tự thay thế; xuất lại dưới dạng UTF-8 từ ứng dụng nguồn.
  • Chỉ UTF-8 được viết. Mã hóa kế thừa không được sản xuất.
  • Không có hỗ trợ nhiều trang vì CSV không có khái niệm về trang tính.
  • Một tệp có trích dẫn đã bị hỏng sẽ được báo cáo, không được sửa chữa.
  • Việc hoàn tác bị giới hạn ở các thao tác 20 cuối cùng.