我正在尝试检查一些 XML 文件的格式。我尝试的以下代码给出了文件过早结束 - fatal error 。以下代码内容描述了字符串形式的 XML 详细信息。
public static boolean formatXML (String content) throws SAXException, ParserConfigurationException, IOException
{
DocumentBuilderFactory factory = DocumentBuilderFactory .newInstance();
factory.setValidating(false);
factory.setNamespaceAware(true);
DocumentBuilder builder = factory.newDocumentBuilder;
builder.setErrorHandler(new SimpleErrorHandler());
builder.parse(new InputSource(new StringReader(content))); // Error comes here!
return true;
}
我正在寻找以下问题,但它们对我没有帮助:
如何解决这个问题?我已经使用在线检查器检查了 XML 文件的格式,格式正确。
编辑:里面的内容实际上是 XML 详细信息。我通过调试检查了一下。当我在 Linux 机器上工作时,我无法复制堆栈跟踪,但制作了屏幕截图。
最佳答案
实际上这个错误的原因与XML的形式完全不同。我正在开发 REST API,我可以成功发送请求,但设备只接受与我的不同的特定形式的请求。因此它没有向我发送响应。
解决方案:我更改了请求的结构,其中包括 XML 详细信息。现在它运行良好。
关于java - XML 格式检查器返回文件过早结束。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39720595/