2016-12-13 36 views
-2

我想追加内容到pptx文件中使用下面的代码:如何使用FileOutputStream将数据附加到pptx文件?

FileOutputStream fos = new FileOutputStream(destinationFile,true); 
InputStream is = conn.openDataInputStream(); 
int length = 4096; 
byte[] byteArray = new byte[length]; 

while (true) { 

    int count = is.read(byteArray); 
    if (count ==-1) { 
     break; 
    } 
    fos.write(byteArray, 0, count); 

} 

但它没有得到追加。我忘了添加一些东西吗?

以上附加方法仅适用于txt文件吗?

编辑:

我解决了问题。它实际上是我从中检查文件大小的文件浏览器没有被刷新! 上述代码确实可以将下载的数据附加到'pptx'文件。 使用“的RandomAccessFile”而不是“FileOutputStream中”(但两者似乎是工作的罚款)

感谢您的支持:)

+0

这确实会追加下载字节的文件,是要追加一个正确的方法将下载的字节下载到文件中,但是将下载的字节附加到文件上真的是你想要做的事情? – immibis

+2

*“我错过了什么吗?”*是的,您完全忽略了PPTX文件的[格式](https://en.wikipedia.org/wiki/Office_Open_XML)。它不是可以追加的字节流,而是一种复杂的文件格式。它实际上是一个由XML和BINARY文件组合而成的ZIP文件。 – Andreas

+0

使用上述代码初始下载文档工作正常。一旦下载完成,我们就可以查看pptx文件。但是,当我试图追加,它正在失败 – android

回答

0

我得到的问题解决。它实际上是我从中检查文件大小的文件浏览器没有被刷新!上述代码确实可以将下载的数据附加到'pptx'文件。使用“的RandomAccessFile”而不是“FileOutputStream中”(但两者似乎是工作的罚款)

感谢您的支持:)

相关问题