ich eine Reihe von Tests für die Größe eines String
zu schaffen, dies zu tun ich etwas mit wie diese myString.getBytes("UTF-8").length > MAX_SIZE
für die Java eine geprüfte Ausnahme UnsupportedEncodingException
hat.String, der in UTF-8 nicht dargestellt werden kann
Nur aus Neugier und um weitere mögliche Testszenarien zu berücksichtigen, gibt es einen Text, der nicht durch UTF-8-Zeichencodierung dargestellt werden kann?
BTW: Ich habe meine Hausaufgaben gemacht, aber nirgends (das kann ich finden) gibt an, dass UTF-8/Unicode tatsächlich ALLE möglichen Zeichen enthält. Ich weiß, dass seine Größe 2^32 ist und viele von ihnen sind noch leer, aber die Frage bleibt.
Was ist, wenn der String bereits mit etwas anderem kodiert ist? –
soweit mein Verständnis reicht UTF-8 sollte in der Lage sein, * jede andere Kodierung * einzuschließen (bitte nimm dieses Literal nicht, es ist nichts als eine Annahme) – Ordiel
UTF-8 ist eine Möglichkeit, den gesamten Unicode-Code zu kodieren . UTF-16 ist ein anderer. Alle bekannten Unicode-Codepunkte können sowohl in UTF-8 als auch in UTF-16 codiert werden. UTF-8 benötigt dafür bis zu 4 Byte, UTF-16 bis zu zwei 16-Bit-Werte. Aber nicht alle 4-Byte-Kombinationen sind gültige UTF-8- oder UTF-16-Codepunkte. –