gpt4 book ai didi

java - Java中的XML字符串解析

转载 作者:数据小太阳 更新时间:2023-10-29 02:34:35 25 4
gpt4 key购买 nike

例如,我正在尝试通过 XML 格式的字符串进行解析;

<params  city="SANTA ANA" dateOfBirth="1970-01-01"/>

我的目标是在数组列表中添加属性名称,例如 {city,dateOfBirth},并在另一个数组列表中添加属性值,例如 {Santa Ana, 1970-01-01}任何建议,请帮助!

最佳答案

  1. 创建 SAXParserFactory
  2. 创建 SAXParser
  3. 创建 YourHandler,它扩展了 DefaultHandler
  4. 使用 SAXParserYourHandler 解析您的文件。

例如:

try {
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
parser.parse(yourFile, new YourHandler());
} catch (ParserConfigurationException e) {
System.err.println(e.getMessage());
}

其中,yourFile - File 类的对象。

YourHandler 类中:

import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

public class YourHandler extends DefaultHandler {
String tag = "params"; // needed tag
String city = "city"; // name of the attribute
String value; // your value of the city

@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
if(localName.equals(tag)) {
value = attributes.getValue(city);
}
}

public String getValue() {
return value;
}
}`

有关 SAX 解析器和 DefaultHandler 的更多信息 herehere分别。

关于java - Java中的XML字符串解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31062535/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com