Bir "ñ" karakteri olan bir String'im var ve bununla ilgili bazı sorunlarım var. Bu String'i UTF-8 kodlamasına kodlamam gerekiyor. Bu şekilde denedim ama işe yaramıyor:
byte ptext[] = myString.getBytes();
String value = new String(ptext, "UTF-8");
Bu dizeyi utf-8 olarak nasıl kodlayabilirim?
Kullanmaya ne dersiniz
ByteBuffer byteBuffer = StandardCharsets.UTF_8.encode(myString)
Java'daki String
nesneleri, değiştirilemeyen UTF-16 kodlamasını kullanır.
Farklı bir kodlamaya sahip olabilecek tek şey byte[]
dır. Yani UTF-8 verisine ihtiyacınız varsa, o zaman bir byte[]
a ihtiyacınız vardır. Beklenmedik veriler içeren bir String
e sahipseniz, sorun daha önceki bir yerde bazı ikili verileri yanlış bir şekilde String
e dönüştürmüştür (yani yanlış kodlama kullanmıştır).