Java: ускорить чтение иностранных символов - PullRequest
1 голос
/ 10 апреля 2010

Мой текущий код должен читать иностранные символы из Интернета, в настоящее время мое решение работает, но оно очень медленное, поскольку оно читает символ за символом с помощью InputStreamReader. Есть ли способ ускорить его, а также выполнить работу?

// Pull content stream from response
        HttpEntity entity = response.getEntity();
        InputStream inputStream = entity.getContent();

        StringBuilder contents = new StringBuilder();
        int ch;
        InputStreamReader isr = new InputStreamReader(inputStream, "gb2312");
          // FileInputStream file = new InputStream(is);
         while( (ch = isr.read()) != -1)
             contents.append((char)ch);
         String encode = isr.getEncoding();

         return contents.toString();

1 Ответ

6 голосов
/ 10 апреля 2010

Оберните ваш InputStreamReader с помощью BufferedReader

для эффективного чтения символы, массивы и строки.

InputStreamReader isr = new InputStreamReader(inputStream, "gb2312");
Reader reader = new BufferedReader(isr);
...