流已经打开 - 例外

时间:2012-05-07 09:49:12

标签: java blackberry

private static void fileChunking() throws IOException {
    InputStream is = null;
    OutputStream os = null;
    byte[] buffer;
    int maxBufferSize = 102400;
    int bytesRead, bytesAvailable, bufferSize;
    int responsecode = 0;
    String responsemessage = null;
    bufferSize = Math.min(content.length, maxBufferSize);
    buffer = new byte[bufferSize];
    bytesRead = is.read(buffer, 0, bufferSize);
    while (bytesRead > 0) {
        os.write(buffer, 0, bufferSize);
        bytesAvailable = is.available();
        bufferSize = Math.min(bytesAvailable, maxBufferSize);
        bytesRead = is.read(buffer, 0, bufferSize);
    }

    is.close();
    os.flush();
    responsecode = con.getResponseCode();
    responsemessage = con.getResponseMessage();
    System.out.print(responsemessage);

}

代码在读取时抛出异常'Stream already open'   bytesRead = is.read(buffer,0,bufferSize);

1 个答案:

答案 0 :(得分:1)

您可能已在其他位置调用过getReader(),与getInputStream()互斥。很难说这段代码,而且答案有点不太可能。

更有可能从servlet字段或某个公共变量中获取InputStream,并且有两个请求会读取。

相关问题