Tôi đang sử dụng nhiều công cụ để thường xuyên chuẩn bị dữ liệu cho web. Một giai đoạn yêu cầu tôi mở CSV trong Excel, thay đổi và lưu tệp.
Có cách nào để buộc Excel chấp nhận mã hóa UTF-8 và lưu các tệp của nó với mã hóa đó không?
Tôi đang sử dụng nhiều công cụ để thường xuyên chuẩn bị dữ liệu cho web. Một giai đoạn yêu cầu tôi mở CSV trong Excel, thay đổi và lưu tệp.
Có cách nào để buộc Excel chấp nhận mã hóa UTF-8 và lưu các tệp của nó với mã hóa đó không?
Câu trả lời:
Tôi đã trả lời một câu hỏi tương tự tại Mã hóa ký tự mặc định cho Trình hướng dẫn văn bản Excel? .
Tôi đã tìm thấy câu trả lời của mình tại Thay đổi loại nguồn gốc nhập văn bản mặc định trong Excel .
Giống như Vasille nói trong bình luận cho câu hỏi này, nếu tệp của bạn không thực sự ở định dạng UTF-8, về mặt kỹ thuật bạn có thể muốn chuyển đổi các ký tự trong tệp thành mã hóa bạn muốn trước khi mở trong Excel. Tuy nhiên, đối với mục đích của tôi, UTF-8 thực hiện công việc đủ tốt để hiển thị các ký tự không bị hỏng.
Một cách dễ dàng để thay đổi mã hóa excel ANSI thành UTF-8 là mở tệp .csv trong notepad rồi chọn Tệp> Lưu dưới dạng. Bây giờ ở phía dưới, bạn sẽ thấy mã hóa được đặt thành ANSI, thay đổi nó thành UTF-8 và lưu tệp dưới dạng tệp mới và sau đó bạn đã hoàn tất.
Có vẻ như Byte Order Mark được yêu cầu bởi phần mềm Microsoft Office.
Sử dụng Notepad ++, chuyển đổi CSV bằng menu: Mã hóa -> Chuyển đổi sang UTF8-BOM.
Sử dụng sed
tiện ích Unix, có sẵn trong cmder hoặc Git cho Windows . Xem Thêm BOM vào tệp UTF-8 .
sed -i '1s/^/\xef\xbb\xbf/' file.csv
Bạn cần sử dụng File > Import
tùy chọn và bắt đầu với tài liệu trống và chỉ địnhUTF-8
nhưng điều này là không tối ưu để biến đây thành một cài đặt mặc định cho tất cả các tệp, dù sao cũng không cần thiết phải xoay các tệp xung quanh Google Drive hoặc LibreOffice. Mặc định chỉ là lựa chọn tồi và khuyết tật để thay đổi gây khó chịu.
Liên quan
Cách đặt mã hóa ký tự khi mở Excel nhưng không tìm thấy tùy chọn thay đổi mặc định sao cho tất cả các tệp được tự động mở bằng UTF-8 thay vì định dạng Macintosh trong OSX
Cách thay đổi tùy chọn tệp mặc định thành UTF-8 khỏi tùy chọn tệp Macintosh trong Apple.SE.
Tôi đã giải quyết vấn đề tương tự trước đây. Không thành công, nhưng bạn có thể sử dụng LibreScript , mặc định là UTF-8.
Có một addin Excel có sẵn ở đây để làm việc với các tệp Unicode CSV sẽ giúp bạn.
Đây là ghi chú của nhà phát triển Jaimon Mathew:
Excel coi các tệp .csv dưới dạng tệp văn bản và sẽ thay thế tất cả các ký tự Unicode bằng cách sử dụng? Nếu bạn muốn giữ các ký tự Unicode, bạn sẽ cần lưu tệp dưới dạng văn bản Unicode Unicode (* .txt), đây là một tệp được phân tách bằng Tab. Vì tôi không thể tìm thấy bất kỳ giải pháp hiện có nào để bảo toàn các ký tự Unicode ở định dạng CSV, tôi nghĩ rằng tôi sẽ thử sử dụng Excel Addin để làm điều đó.
Đây không phải là giải pháp tốt nhất, nhưng đó là một tùy chọn: tải tệp Excel của bạn lên ổ Google, mở tệp đó bằng Google Tab và tải xuống dưới dạng tệp csv. Nó làm việc cho tôi.
Giả sử bạn có sẵn một vỏ unix (Cygwin), tôi nối vào phía trước tệp csv một ít ID char unicode 3 (UTF-8) và sau đó nó đọc tốt vào Excel và quan trọng hơn là nó được xử lý đúng như đầu vào bằng VB Excel tự động hóa.
UTF-8.txt
EFBBBF << hex chỉnh sửa thành một tệp 3 char.
mèo UTF-8.txt tệp để sử dụng.csv> new_file.csv
UTF-8.txt
tập tin này không?