将Instream转换为String更快(Android)?

时间:2011-07-14 20:42:56

标签: java javascript android

如何使用..

快速将Instream转换为字符串
private static String convertStreamToString(InputStream is) {
    /*
     * To convert the InputStream to String we use the BufferedReader.readLine()
     * method. We iterate until the BufferedReader return null which means
     * there's no more data to read. Each line will appended to a StringBuilder
     * and returned as String.
     */
    BufferedReader reader = new BufferedReader(new InputStreamReader(is));
    StringBuilder sb = new StringBuilder();

    String line = null;
    try {
        while ((line = reader.readLine()) != null) {
            sb.append(line + "\n");
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        try {
            is.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    return sb.toString();
}

但这在模拟器上至少需要2-3分钟。我发现如果我将插件转换为字节数组然后转换为字符串会更快吗?有没有人知道这个?

1 个答案:

答案 0 :(得分:0)

改为使用ByteArrayOutputStream。