2016-05-12 23 views
12

Tôi có tệp CSV và tôi muốn hiểu mã hóa của tệp. Có tùy chọn menu trong Microsoft Excel có thể giúp tôi phát hiện ra nóCách kiểm tra mã hóa tệp CSV

HOẶC tôi có cần sử dụng các ngôn ngữ lập trình như C# hoặc PHP để suy ra nó hay không.

+0

Bản sao có thể có của http://superuser.com/questions/280603/how-to-set-character-encoding-when-opening-excel – Gandhi

Trả lời

18

Bạn chỉ có thể mở tệp bằng notepad rồi goto Tệp -> Lưu dưới dạng. Bên cạnh nút Lưu sẽ có một trình đơn thả xuống mã hóa và mã hóa hiện tại của tệp sẽ được chọn ở đó.

+2

Huh? Đây có phải là sử dụng chardet hay không? Điều này cảm thấy như một câu trả lời tồi. – mlissner

+0

Bạn có hỏi nếu trình soạn thảo văn bản được cài sẵn của Windows, notepad sử dụng thư viện python (hoặc có khả năng js) không? Tôi chắc chắn nó không phải vì nó sẽ được viết bằng một ngôn ngữ được biên dịch tự nhiên như C++. Ngoài ra, mã hóa văn bản được dựa trên sự kiện, không phải cảm xúc vì vậy nếu bạn có kiến ​​thức về lý do tại sao đây là một câu trả lời tồi, bằng mọi cách, hãy nâng cao nó, nhưng cảm xúc của bạn không liên quan đến cuộc thảo luận. – CamW

+0

Đây là điều: định dạng CSV không có cách xác định mã hóa ký tự của nó. Bản thân định dạng thì không. Vì vậy, mọi thứ mở CSV phải đoán mã hóa nào được sử dụng để tạo tệp. Câu hỏi đặt ra là, làm thế nào notepad làm điều này? Chardet là một thư viện được sử dụng cho điều này và nó dựa trên cách trình duyệt làm điều đó (IIRC, nó ban đầu là một chương trình C). Nếu notepad đoán mã hóa (trái ngược với giả sử tất cả các tệp CSV là 'windows-1252' hoặc cái gì đó), thì nó sử dụng cái gì đó giống như cái chardet. Nhưng cái gì? Chúng tôi không có ý tưởng. Tôi sẽ không đề nghị phương pháp này. Đó là một hộp đen. – mlissner

Các vấn đề liên quan