Im đọc một tập tin với ReadAllTextLàm thế nào để sử dụng ReadAllText khi mã hóa tập tin không rõ
String[] values = File.ReadAllText(@"c:\\c\\file.txt").Split(';');
int i = 0;
foreach (String s in values)
{
System.Console.WriteLine("output: {0} {1} ", i, s);
i++;
}
Nếu tôi cố gắng đọc một số tác phẩm tôi nhận được đôi khi các ký tự sai trở lại (cho ÖÜÄÀ ...). Đầu ra là như thế nào, nó bởi vì có một số rắc rối với các mã hóa '?':
output: 0 TEST
output: 1 A??O?
Một giải pháp sẽ được thiết lập mã hóa trong ReadAllText, cho phép nói một cái gì đó giống như ReadAllText(@"c:\\c\\file.txt", Encoding.UTF8)
mà có thể khắc phục vấn đề. Nhưng nếu tôi vẫn sẽ nhận được '?' là đầu ra? Nếu tôi không biết mã hóa của tập tin thì sao? Và điều gì sẽ xảy ra nếu mỗi tệp đơn có mã hóa khác nhau? Điều gì sẽ là cách tốt nhất để làm điều đó với C#? Cảm ơn bạn
Bạn cần biết mã hóa là gì. Và không có cách nào đáng tin cậy 100% để tìm hiểu hoàn toàn dựa trên nội dung của tệp. –
Vui lòng tham khảo bài này http://stackoverflow.com/questions/2239968/c-sharp-file-readalltext-doing-weird-things – Dhaval