Dosya sistemimde (Windows 7) bazı metin dosyalarım var (Bunlar SQL betik dosyaları, eğer önemliyse).
Notepad++]1 ile açıldığında, "Encoding" menüsünde bazılarının "UCS-2 Little Endian" ve bazılarının "UTF-8 without BOM" kodlamasına sahip olduğu bildirilmektedir.
Buradaki fark nedir? Hepsi tamamen geçerli senaryolar gibi görünüyor. Notepad++ olmadan dosyanın hangi kodlamalara sahip olduğunu nasıl anlayabilirim?
Dosyalar genellikle kodlamalarını bir dosya başlığı ile belirtir. Birçok örnek vardır burada. Ancak, başlığı okusanız bile bir dosyanın gerçekten hangi kodlamayı kullandığından asla emin olamazsınız.
Örneğin, ilk üç baytı 0xEF,0xBB,0xBF
olan bir dosya muhtemelen UTF-8 kodlu bir dosyadır. Ancak, 
karakterleriyle başlayan bir ISO-8859-1 dosyası olabilir. Ya da tamamen farklı bir dosya türü olabilir.
Notepad++ bir dosyanın hangi kodlamayı kullandığını tahmin etmek için elinden geleni yapar ve çoğu zaman bunu doğru yapar. Yine de bazen yanlış yapar - bu yüzden 'Encoding' menüsü vardır, böylece en iyi tahminini geçersiz kılabilirsiniz.
Bahsettiğiniz iki kodlama için:
0xFF,0xFE
ile başlar. Anladığım kadarıyla, Notepad++ bunları "UCS-2" olarak tanımlıyor çünkü UTF-16'nın belirli yönlerini desteklemiyor.Yapamazsın. Eğer bunu yapabilseydiniz, bu kadar çok web sitesi veya "rastgele anlamsız" metin dosyası olmazdı. Bu yüzden kodlama genellikle meta veri olarak yük ile birlikte gönderilir.
Olmaması durumunda, yapabileceğiniz tek şey "akıllı bir tahmin" yapmaktır, ancak aynı bayt dizisi birkaç kodlamada geçerli olabileceğinden sonuç genellikle belirsizdir.