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

  • DroidModderX ROOT Master

    DroidModderX

    14 ŞUBAT 2011
  • Missouri Star Quilt Company

    Missouri Sta

    18 ŞUBAT 2009
  • superflyy88

    superflyy88

    8 ŞUBAT 2009