Java XML 解析:长度校验并封装字符串
以下是一个示例代码,可以解析 XML 文件,进行长度校验,然后封装成字符串对象:
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
public class XmlParser {
public static void main(String[] args) {
try {
// 读取 XML 文件
File xmlFile = new File('data.xml');
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(xmlFile);
doc.getDocumentElement().normalize();
// 获取 XML 节点列表
NodeList nodeList = doc.getElementsByTagName('item');
// 解析 XML 节点,并进行校验
StringBuilder sb = new StringBuilder();
for (int i = 0; i < nodeList.getLength(); i++) {
String content = nodeList.item(i).getTextContent();
if (content.length() > 10) {
throw new Exception('内容过长');
}
sb.append(content);
}
// 封装成字符串对象
String result = sb.toString();
// 输出结果
System.out.println(result);
} catch (Exception e) {
e.printStackTrace();
}
}
}
在上面的代码中,我们首先读取了一个名为 'data.xml' 的 XML 文件,然后使用 DOM 解析器解析 XML 文件,获得 XML 节点列表,逐个遍历节点,获取节点内容,并进行长度校验。如果节点内容长度超过了 10 个字符,就抛出一个异常。最后,我们使用 StringBuilder 将所有节点内容拼接在一起,然后将其封装成字符串对象,并输出结果。
需要注意的是,上面的代码中只对 'item' 节点的内容进行了校验,如果 XML 文件中还有其他节点需要校验,需要相应地修改代码。
原文地址: https://www.cveoy.top/t/topic/nJy5 著作权归作者所有。请勿转载和采集!