读取文件到字节时的java.outOfMemory

时间:2014-02-12 21:07:15

标签: android

当tring读取一个60 MB的大文件到字节时,我得到一个java.outOfMemory异常。 我试过apache i / o commons [IOUtils.toByteArray(fos)]和:

        File file = new File(f);
        int size = (int) file.length();
        byte[] bytes = new byte[size];
        try {
            BufferedInputStream buf = new BufferedInputStream(new FileInputStream(file));
            buf.read(bytes, 0, bytes.length);
            buf.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return bytes;

有没有人知道如何将文件读取到byte []而没有例外?

我想将文件拆分为15mb pices,在主题中添加一个“标题”(在字节中,包含自己的部件号),分享它们,然后用“标题”的信息重新构建原始文件。

1 个答案:

答案 0 :(得分:0)

您可以将文件读取为字符串行like described here并使用String.getBytes()方法从每行获取字节&后来用你想要的任何东西组成它们