java - 修剪 XML 时出现内存不足错误

标签 java android xml sax xml-parsing

我正在编写一个从 http 解析 XML 文件的程序。 XML 的根标签前面有一些空格。

因此,我需要在解析 XML 之前对其进行修剪。

这是我写的方法,

     private String trimXML(InputStream inputStream){
        Writer writer = null;
        try{
            writer = new StringWriter();
            char[] buffer = new char[Constants.BUFFER_SIZE];
            try {
                Reader reader = null;
                try {
                    reader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
                    int n = 0;                
                    while ((n = reader.read(buffer)) != -1) {
                        writer.write(buffer, 0, n);
                    }
                } catch (UnsupportedEncodingException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } finally {
                try {
                    inputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return writer.toString().trim();
        }catch(NullPointerException e){
            return null;
        }
    }

现在我面临一个大问题是在我请求XML几次后,出现内存不足错误...

有人可以给我一些解决这个问题的建议吗?

最佳答案

为什么? XML 解析器不关心空白。如果您收到无法解析的 XML 文档,解决方案是修复发送方,而不是在接收方乱搞一些东西。这样每个人都错了。

关于java - 修剪 XML 时出现内存不足错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5739108/

相关文章:

android - Android 是否在内部使用 Skia 在位图上绘制文本?

java - 具有多对多关系的 jax-b xml 反向引用

java - 字符串数组 : Adding elements in Loop

android - 如何在 onCreateView() 中调用 SupportPlaceAutocompleteFragment

java - 使用 cloudant 的自由应用程序的 SSL 握手失败

android - 使自定义 View 可聚焦

java - XmlPullParser 从 START_DOCUMENT 跳转到 END_DOCUMENT 事件类型

java.lang.IllegalStateException 您需要在此 Activity 中使用 Theme.AppCompat 主题(或后代)

java - 使用正则表达式在文件夹路径中查找字符串

java - 未设置引导类路径