java如何解析http请求返回的xml报⽂
xml报⽂解析⽅法有很多种,此处采⽤dom4j的⽅法。
dom4j的jar包下载地址:dom4j.github.io/#
1、InputStream()和new SAXReader().read(输⼊流):
返回的报⽂如下:
<?xml version="1.0" encoding="UTF-8"?>
<CreateAccessKeyResponse>
  <CreateAccessKeyResult>
    <AccessKey>
      <UserName>aaa</UserName>
      <AccessKeyId>2019dfc6ab5fe433f10c</AccessKeyId>
      <Status>Active</Status>
      <IsPrimary>false</IsPrimary>
      <SecretAccessKey>a14aeb3ac35b835d5ec4507d5667a353c77ceedc</SecretAccessKey>
</AccessKey></CreateAccessKeyResult></CreateAccessKeyResponse>
获取参数AccessKeyId的值:
import org.dom4j.Document;
使用dom4j解析xml文件import org.dom4j.Element;
import org.dom4j.io.SAXReader;
HttpURLConnection conn = create_AccessKey();    //create_AccessKey为⾃⼰写的http请求⽅法
// 从request中取得输⼊流
InputStream inputStream = InputStream();
/
/ 读取输⼊流
SAXReader reader = new SAXReader();
Document document = ad(inputStream);
// 得到xml根元素
Element root = RootElement();
String AK = root.element("CreateAccessKeyResult").element("AccessKey").element("AccessKeyId").getTextTrim();
System.out.println("AccessKeyId="+AK+"\n");
2、⽤dom4j读取xml⽂件中的参数:
public void readXml() throws DocumentException, FileNotFoundException, IOException {
String xml =
SAXReader reader = new SAXReader();
try {
Document document = ad(xmlFile);
Element root = RootElement();
AK = root.element("ak").getTextTrim();
SK = root.element("sk").getTextTrim();
} catch (Exception e) {
e.printStackTrace();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <ak>0d34d3db4bab560d343c</ak>
  <sk>a52628cb22b5a12642dd907075df6996b4c8a7b1</sk>
</configuration>

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。