android xml outofmemoryerror,SOAP-非常大的XML响应-OutOfMemoryError

小编典典

感谢Graeme,在字节流中打开连接是可行的。如果对某人有帮助,这是我的源代码

//Make a temporary file to save data

File responseFile = File.createTempFile("SOAP", "xml", context.getFilesDir());

int nbCharRead = 0; int i=0; int totalRead = 0;

//Send query

OutputStream outputS = url_Connection.getOutputStream();

Writer w_out = new OutputStreamWriter(outputS);

w_out.write(webServiceXml);

w_out.flush();

w_out.close();

//Buffers

BufferedReader bufReader = new BufferedReader(new InputStreamReader(url_Connection.getInputStream()));

BufferedWriter bufWriter = new BufferedWriter(new FileWriter(responseFile));

char[] buffer = new char[10000];

while((nbCharRead = bufReader.read(buffer, 0, 10000)) != -1)

{

totalRead += nbCharRead;

Log.d("Test InputStream", "i: " + i++ +" - " + nbCharRead + " -> " + totalRead);

bufWriter.write(buffer, 0, nbCharRead );

}

if(bufWriter != null)

{

bufWriter.flush();

bufWriter.close();

}

Log.w(MsgLog, "--- Stream Got--- ; Total : " + totalRead);

2020-10-12

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值