AIMP Forum

AIMP for Android => Вопросы / Questions => Topic started by: Xaker_Two on September 07, 2023, 22:18:22

Title: А где в 4-ке кодовые страницы семейства UTF?
Post by: Xaker_Two on September 07, 2023, 22:18:22
в версии 1052 на любой вкус и цвет, в 1358 - набор ISO-8859-*, Windows-125*, ISO-2022 для китая кореи и японии. Они настолько невостребованы или настолько трудны в поддержке?
Title: Re: А где в 4-ке кодовые страницы семейства UTF?
Post by: Artem on September 07, 2023, 22:43:24
Как опция называется?
Title: Re: А где в 4-ке кодовые страницы семейства UTF?
Post by: Xaker_Two on September 07, 2023, 23:55:27
Playlist > Default code page for ANSI-tags, так же как и в 1052

если это намек на ANSI ≠ Unicode, я где-то пропустил объявление автодетектирования Unicode?(не сарказм)
если это какой-то другой намек - поясните
Title: Re: А где в 4-ке кодовые страницы семейства UTF?
Post by: Artem on September 08, 2023, 08:03:23
если это намек на ANSI ≠ Unicode, я где-то пропустил объявление автодетектирования Unicode?(не сарказм)

да именно. Юникод детектируется элементарно. Это или UTF7/8, у которого есть определенная сигнатура, либо двух(и более)-байтовые кодировки. В этом списке должны быть только однобайтовые анси-кодировки и точка, все остальное - лишнее.
Title: Re: А где в 4-ке кодовые страницы семейства UTF?
Post by: Xaker_Two on September 08, 2023, 18:40:28
мм, эт хорошо! по поводу списка так же согласен.

как определить UTF-8 если в строке только латиница (00-7F)?
наводящий вопрос - к какой кодировке относить диапазон 00-7F?(без учета оч старых кодировок где он менялся)
Title: Re: А где в 4-ке кодовые страницы семейства UTF?
Post by: Artem on September 08, 2023, 21:11:50
Вы знаете как кодируется нелатиница в utf8? Плюс там есть биты-маркеры, по которым можно элементарно определить является ли последовательность utf7/8 или нет. На гитхабе есть исходники ACL-ки - можете сами посмотреть.
Title: Re: А где в 4-ке кодовые страницы семейства UTF?
Post by: Xaker_Two on September 08, 2023, 22:42:09
да знаю) но с utf-16 не игралься так сильно сильно как с utf-8
ответом по идее должно было быть что без разницы т.к. для совместимости диапазон 00-7F не меняют и при одной лишь латинице, без доп маркеров, определить штатную(не избыточную) кодировку нереально

а вот далее хотел полюбопытствовать как дела обстоят с примером ниже, т.к. знаю что может быть опциональный, но не обязательный! BOM маркер и, обязательный для UTF-8 при наличии BOM, header 0xEF 0xBB 0xBF, а если BOM нет то
Code: (binary data) [Select]
0b_11000010 0b_10100011 может быть воспринято как
Code: (UTF-8 символ) [Select]
£ или в зависимости от платформы как
Code: (UTF-16 LE символ) [Select]
или
Code: (UTF-16 BE символ) [Select]

хотя закладывались два символа
Code: (windows-1251) [Select]
ВЈ
но кажется для этого вы мне и дали инфу про ACL-ку, может гляну на досуге)

я очень падла любопытная и из тех людей которые чтобы с чем-то работать должны хоть немного понимать как оно внутри устроено, а посему, когда начинал в плюсах работать, начал не с использования string, а с написания собственного урезанного и заточенного под меня аналога XD ... зато и с поинтерами разобрался получше
Title: Re: А где в 4-ке кодовые страницы семейства UTF?
Post by: Artem on September 08, 2023, 22:54:07
utf-16

utf16 и utf32 детектируется другим образом - по старшим байтам.

а вот далее хотел полюбопытствовать как дела обстоят с примером ниже

Не знаю, нужно проверять.

Стоит отметить, что помимо всего прочего в метатегах есть еще и свои маркеры, по которым можно понять, была использована однобайтовая кодировка или нет