SORU
14 Aralık 2011, ÇARŞAMBA


UTF-8 byte[] String

Hadi BufferedInputStream bir bayt dizisine UTF-8 kodlanmış bir metin dosyasının bayt okumak için kullandım sanırım. Aşağıdaki rutin bir dize bayt dönüştürmek için kullanabilirsiniz biliyorum, ama orada sadece bayt yineleme ve her bir dönüştürme daha bunu yapmanın daha verimli/daha akıllı bir yolu var mı?

public String openFileToString(byte[] _bytes)
{
    String file_string = "";

    for(int i = 0; i < _bytes.length; i  )
    {
        file_string  = (char)_bytes[i];
    }

    return file_string;    
}

CEVAP
14 Aralık 2011, ÇARŞAMBA


String yapıcısı bak

String str = new String(bytes, StandardCharsets.UTF_8);

Ve eğer tembel hissediyorsanız, Apache Commons IO kütüphane bir dizeye İnputStream doğrudan dönüştürmek için kullanabilirsiniz:

String str = IOUtils.toString(inputStream, StandardCharsets.UTF_8);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • krotoflik

    krotoflik

    26 ŞUBAT 2011
  • SRC RECORDS

    SRC RECORDS

    2 EKİM 2006
  • the one am radio

    the one am r

    6 Mayıs 2006