"Test" içeriğine sahip bir metin dosyası (UTF-8 kodlaması) var. Bu dosyadan bayt dizisini almayı ve dizeye dönüştürmeyi deniyorum, ancak bir tuhaf karakter içeriyor. Ben şu kodu kullanın:File.ReadAllBytes, File.ReadAllText kullanırken neden farklı sonuç verir?
var path = @"C:\Users\Tester\Desktop\test\test.txt"; // UTF-8
var bytes = File.ReadAllBytes(path);
var contents1 = Encoding.UTF8.GetString(bytes);
var contents2 = File.ReadAllText(path);
Console.WriteLine(contents1); // result is "?test"
Console.WriteLine(contents2); // result is "test"
conents1
contents2
farklıdır - neden?
character (int) content1 [0] 'karakterinin ilk karakterini işaretlerseniz, bu char'ın BOM karakteri olduğunu görürsünüz. Daha fazla bilgi: http://stackoverflow.com/questions/6784799/what-is-this-char-65279 – kpull1