Jeg har en streng med et "ñ" tegn, og jeg har noen problemer med den. Jeg må kode denne strengen til UTF-8-koding. Jeg har prøvd på denne måten, men det fungerer ikke:
byte ptext[] = myString.getBytes();
String value = new String(ptext, "UTF-8");
Hvordan koder jeg den strengen til utf-8?
Hva med å bruke
ByteBuffer byteBuffer = StandardCharsets.UTF_8.encode(myString)
String
-objekter i Java bruker UTF-16-koding som ikke kan endres.
Det eneste som kan ha en annen koding, er en byte[]
. Så hvis du trenger UTF-8-data, trenger du en byte[]
. Hvis du har en String
som inneholder uventede data, ligger problemet et sted som feilaktig har konvertert binære data til en String
(dvs. med feil koding).