Encoding Unicode apa yang digunakan bukan berbasis OS.
Bahkan Windows notepad.exe memiliki opsi terdaftar- (saya akan memasukkan tanda kurung apa maksudnya notepad itu) ANSI (bukan unicode), Unicode (notepad berarti Unicode LE), Unicode Big Endian (BE), UTF-8
ANSI bukan unicode, ini melibatkan jumlah karakter yang sangat terbatas, jadi mari kita kesampingkan itu.
Tetapi melihat bahkan notepad dapat melakukan LE, atau BE, atau UTF-8
Dan selain notepad, UTF-8 dapat dengan atau tanpa BOM.
Dan saya menggunakan Windows dengan Cygwin meskipun port Windows mungkin melakukan \ r \ n bahkan ketika Anda menentukan \ n Telah melihat dan melakukannya.
Tidak ada satu aturan pun tentang apa pengkodean Unicode menggunakan OS tertentu. Itu tidak akan menjadi OS yang sangat fleksibel jika ada.
Untuk benar-benar melihat perbedaan, ketahui Perangkat Lunak, apa yang Encoding gunakan atau tawarkan oleh perangkat lunak.
Dapatkan Cygwin dan xxd, dan / atau hex editor dan lihat apa yang sebenarnya ada di dalam file. Gunakan perintah 'file' untuk membantu mengidentifikasi file. Maka Anda benar-benar melihat apa UTF 16bit LE itu. Apa itu UTF 16bit BE. Apa itu UTF-8 (dan UTF-8 dapat dengan atau tanpa BOM).
Kadang-kadang Anda dapat memberitahu notepad untuk menyimpan sebagai unicode (dengan mana notepad berarti unicode 16 bit endian kecil), dan itu tidak akan. Tetapi pilih font unicode seperti arial unicode, dan salin dalam beberapa karakter unicode dari charmap dan itu akan .. Dan cara yang baik untuk melihat apa yang dilakukan notepad atau perangkat lunak apa pun, adalah dengan melihat hex file.
C:\asdf>notepad.exe a.a
C:\asdf>file a.a
a.a; Little-endian UTF-16 Unicode text, with no line terminators
C:\asdf>type a.a
aaa慡ൡ <-- though displayed aaa followed by some boxes in my cmd window
C:\asdf>
C:\asdf>xxd a.a
0000000: fffe 6100 6100 6100 6161 610d ..a.a.a.aaa.
C:\asdf>
^^ The portion of the byte that stores the 61 is the lower value portion which with LE is stored first.
Perintah dd (perintah * nix yang saya jalankan dari cygwin di dalam windows) dapat mengubahnya
C:\asdf>xxd -p a.a
fffe6100610061006161610d
C:\asdf>file a.a
a.a; Little-endian UTF-16 Unicode text, with no line terminators
C:\asdf>dd if=a.a conv=swab of=a.a2
0+1 records in
0+1 records out
12 bytes (12 B) copied, 0 seconds, Infinity B/s
C:\asdf>type a.a2
a a a aaa
C:\asdf>xxd -p a.a2
feff00610061006161610d61
C:\asdf>file a.a2
a.a2; Big-endian UTF-16 Unicode text, with no line terminators
C:\asdf>
Dan notepad itu sendiri dapat disimpan sebagai UTF-16 Big Endian atau UTF-16 Little Endian atau UTF-8
Jika Anda orang teknis atau bahkan hanya pengguna notepad, Anda tidak terikat pada satu penyandian karena OS Anda!
Saya kira UTF-8 lebih masuk akal daripada UTF-16, UTF-16 akan menggunakan 16 bit bahkan untuk karakter yang hanya membutuhkan 8 bit. Namun, ingatlah bahwa charmap menunjukkan kode UTF-16.
Sublime (editor teks windows) menyimpan unicode sebagai UTF-8 secara default.
Saya menggunakan Windows dan terkadang unicode, dan saya kebanyakan menggunakan UTF-8.
Dan karena Windows fleksibel secara teknis, linux setidaknya fleksibel secara teknis!