Добрый день.
Раньше использовал, в общем и до сих пор использую, кодировку koi8-r
и все бы хорошо, пока не нужна совместимость с одной альтернативной
операционной системой. Я умею монтировать виндовые диски, самбовые
шары, чтобы все читалось, перекодировать файлы и тп. Речь не об этом.
Решил я, что надо двигаться по пути прогресса и использовать unicode.
Пишу именно так, потому что в этом и проблема. Оказывается винда и
линукс используют разный уникод. В линуксе у нас UTF8, а в винде UTF16.
И друг-друга они часто не понимают!
Началось все с того, что я перекодировал все id3 тэги в своих мп3шках,
в utf8. После чего BMP их замечательно воспроизводил и сортировал и все такое. Но, когда я записал файлы другу на диск, выяснилось, что ни один виндовый плеер их читать не может. Вместо буковок пишет кракозябли. Сперва я подумал, что винда на самом деле Уникод не понимает. Но потом,
виндузоиды мне объяснили, что мол они юзают "правильный уникод", который
UTF16.
Оставим оголтелых в покое, речь сейчас не о них и не о ХолиВарс. Я начал проверять все подряд, начиная с простого именования файлов UTF8 и ничего в винде прочитать не могу. Вот и не знаю теперь. Что делать?
Обещанного счастья с unicode, когда все всех понимают нет вовсе, или
я просто чего-то не понимаю? Вобщем запутался я.
Итак, что делать? Хочется чтобы имена файлов, тэги, содержимое файлов читались и там и там без лишних бубнов.
P.s. Разницу между UTF8 - 16 - 32 BE/LE я знаю. Прочитал.