У меня странная проблема, когда две переменные Unicode, которые я пытаюсь сравнить, выглядят одинаково, но они различаются в двоичных представлениях. Когда я смотрю на загруженный файл, он обнаруживается с немного отличающимися двоичными представлениями имени файла. Это происходит только при загрузке из браузера Safari. Я не специалист по Unicode. Я озадачен двумя строками, которые имеют различное двоичное представление Unicode, но одинаковы.
Есть ли у какого-нибудь тела понимание, почему это так? Что означает лишний байт для представления немецкого умлаута?
apple-macintosh:~ vijay$ hexdump /tmp/a
0000000 55 6e 74 65 72 73 74 c3 bc 74 7a 74 65 5f 50 72
0000010 6f 6a 65 6b 74 65 2e 64 6f 63 78
000001b
apple-macintosh:~ vijay$ more /tmp/a
Unterstützte_Projekte.docx
apple-macintosh:~ vijay$ hexdump /tmp/b
0000000 55 6e 74 65 72 73 74 75 cc 88 74 7a 74 65 5f 50
0000010 72 6f 6a 65 6b 74 65 2e 64 6f 63 78
000001c
apple-macintosh:~ vijay$ more /tmp/b
Unterstützte_Projekte.docx
apple-macintosh:~ vijay$
Последовательность байтов 0xc3bc (umlaut) представлена как 75cc88. Я не уверен, являются ли они отличным представлением умлаута. Любое понимание было бы очень полезно для меня, чтобы увидеть, как я могу надежно сравнить эти имена файлов