På filsystemet mitt (Windows 7) har jeg noen tekstfiler (det er SQL-skriptfiler, hvis det har noe å si).
Når jeg åpner dem med Notepad++, rapporteres det i menyen "Encoding" at noen av dem har en koding på "UCS-2 Little Endian" og noen på "UTF-8 without BOM".
Hva er forskjellen her? Alle ser ut til å være helt gyldige skript. Hvordan kan jeg se hvilke kodinger filene har uten Notepad++?
Filer angir vanligvis kodingen med en filoverskrift. Det finnes mange eksempler her. Men selv om du leser headeren kan du aldri være sikker på hvilken koding en fil egentlig bruker.
For eksempel er en fil med de tre første byte 0xEF,0xBB,0xBF
sannsynligvis en UTF-8-kodet fil. Det kan imidlertid være en ISO-8859-1-fil som tilfeldigvis begynner med tegnene 
. Eller det kan være en helt annen filtype.
Notepad++ gjør sitt beste for å gjette hvilken koding en fil bruker, og som oftest blir det riktig. Noen ganger tar den imidlertid feil - det er derfor menyen 'Koding' er der, slik at du kan overstyre dens beste gjetning.
For de to kodingene du nevner:
0xFF,0xFE
som de første 2 byte. Så vidt jeg kan se, beskriver Notepad++ dem som "UCS-2" siden den ikke støtter visse aspekter av UTF-16.Det kan man ikke. Hvis det hadde vært mulig, ville det ikke vært så mange nettsteder eller tekstfiler med "random gibberish" der ute. Det er derfor kodingen vanligvis sendes sammen med nyttelasten som metadata.
Hvis den ikke er det, kan du bare "gjette", men resultatet er ofte tvetydig, siden samme byte-sekvens kan være gyldig i flere kodinger.