Khi đọc tệp văn bản được tạo ở đâu đó bên ngoài ứng dụng của tôi, mã hóa được sử dụng không xác định. Ứng dụng của tôi đang sử dụng NSUnicodeStringEncoding (giống với NSUTF16StringEncoding) nên có vấn đề về đọc khác với các tệp được mã hóa UTF16.Cách đọc tệp văn bản mà không biết mã hóa
Có cách nào tôi có thể đoán mã hóa của tệp không? Ưu tiên của tôi là có thể đọc các tệp UTF8 và sau đó là tất cả các tệp khác. Đang lặp qua mã hóa có sẵn và kiểm tra xem độ dài của chuỗi đọc có lớn hơn 0 không thực sự là một cách tiếp cận tốt?
Xin cảm ơn trước.
Ignacio
Có một vài câu hỏi liên quan về Stack Overflow: http://stackoverflow.com/questions/1351151/guess-encoding-when-creating-an-nsstring-from-nsdata http://stackoverflow.com/questions/4198804/how-to-reliably-guess- mã hóa-giữa-macroman-cp1252-latin1-utf-8-và-a http://stackoverflow.com/questions/373081/how-can-i-best-guess-the-encoding-when-the-bom -byte-order-mark-is-missin g (và những người khác). Bạn có thể điều chỉnh chardet thành Objective-C: http://chardet.feedparser.org/ –