当我尝试转换大文件时,我正面临OOM问题>字符串50MB(使用StringBuilder)。
看过类似的问题,但答案都没有帮助。
结束动机是将文件数据附加到xml属性并将其传输到服务器。
在Android设备上试一试。
使用的代码来自此帖子:How do I create a Java string from the contents of a file?
答案 0 :(得分:0)
制作list<string>
并在阅读文件时保存每个文件列表中的200个字符作为新字符串。然后,您可以用相同的方式将其写入XML。
我希望它有所帮助。
答案 1 :(得分:0)
为了避免将整个文件放在Heap中,最好使用Multipart消息将其发送到服务器。一部分将包含XML,该文件将在一个单独的部分中。这可以使用Web服务实现,但这取决于要求以及可以更改服务器实现的程度。
如果服务器是&#34;固定&#34;并且无法更改为接受多部分消息,并且必须始终使用一个XML发送,您可能需要避免使用DOM生成XML。
答案 2 :(得分:0)
使用IOUtils尝试Apache Commons IO库:
public static void main(String[] args) throws Exception {
IOUtils.write("string", new FileOutputStream("file"));
}