php记录xml到txt,提取xml文档的内容到.txt文件中

搜索热词

这是xml文档

/

166024/

http://www.orpha.net/consor/cgi-bin/OC_Exp.PHP?lng=en&Expert=166024

Multiple epiphyseal dysplasia,Al-Gazali type/

Multiple epiphyseal dysplasia - macrocephaly - distinctive facies

OMIM/

607131/

/

ICD10/

Q77.3/

166032

http://www.orpha.net/consor/cgi-bin/OC_Exp.PHP?lng=en&Expert=166032

Multiple epiphyseal dysplasia,with miniepiphyses

OMIM

609325

ICD10

Q77.3

提取出来的.txt文件的数据

这是en_product1_Result_OMIM.txt文档

17601166024Multiple epiphyseal dysplasia,Al-Gazali type607131/

17603166032 Multiple epiphyseal dysplasia,with miniepiphyses 609325/

258Alexander disease203450/

17602166029 Multiple epiphyseal dysplasia,with severe proximal femoral dysplasia609324/

对应的Java代码:

package com.yanek.demo.xml.test;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileWriter;

import java.io.IOException;

import java.util.List;

import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;

import java.util.ArrayList;

public class xmltran1 {

/**

* @param args

* @throws IOException

*/

public static void main(String[] args) throws IOException {

// dom4,xml

SAXReader saxReader = new SAXReader();

try {

Document document = saxReader.read(new File("D:\\root\\data\\en_product1.xml"));

Element root = document.getRootElement();//得到根节点

FileWriter f=new FileWriter(new File("d:\\en_product1_Result_OMIM.txt"),true);

FileWriter f1=new FileWriter(new File("d:\\en_product1_Result_MSEH.txt"),true);

//FileWriter f1=new FileWriter(new File("E:\\新建文件夹\\a.txt"),true);

FileWriter f2=new FileWriter(new File("d:\\en_product1_Result_UMLS.txt"),true);

FileWriter f3=new FileWriter(new File("d:\\en_product1_Result_ICD.txt"),true);

BufferedWriter writer1 = new BufferedWriter(f);

BufferedWriter writer2 = new BufferedWriter(f1);

BufferedWriter writer3 = new BufferedWriter(f2);

BufferedWriter writer4 = new BufferedWriter(f3);

List actions = root.elements("DisorderList");

for(int i = 0; i < actions.size(); i++){

Element action = (Element) actions.get(i);

List list1 = action.elements("Disorder");

for(int j = 0; j < list1.size(); j++){

Element element1 = (Element) list1.get(j);

System.out.println("Disorder id:"+ element1.attributeValue("id"));

writer1.write(element1.attributeValue("id")+"\t");

writer2.write(element1.attributeValue("id")+"\t");

writer3.write(element1.attributeValue("id")+"\t");

writer4.write(element1.attributeValue("id")+"\t");

List list2 = element1.elements("OrphaNumber");

List ls2 = new ArrayList();

Element element6 = (Element) list2.get(0);

ls2.add(element6.getText());

System.out.println("OrphaNumber:"+ element6.getText());

writer1.write(ls2.get(0)+"\t");

writer2.write(ls2.get(0)+"\t");

writer3.write(ls2.get(0)+"\t");

writer4.write(ls2.get(0)+"\t");

List list3 = element1.elements("Name");

List ls3 = new ArrayList();

Element element5 = (Element) list3.get(0);

ls3.add(element5.getText());

System.out.println("Name:"+ element5.getText());

writer1.write(ls3.get(0)+"\t");

writer2.write(ls3.get(0)+"\t");

writer3.write(ls3.get(0)+"\t");

writer4.write(ls3.get(0)+"\t");

List list4 = element1.elements("ExternalReferenceList");

for (int m = 0; m < list4.size(); m++) {

Element element2 = (Element) list4.get(m);

List list5 = element2.elements("ExternalReference");

for(int p = 0; p < list5.size(); p++){

Element element3 = (Element) list5.get(p);

System.out.println("ExternalReference id:"+ element3.attributeValue("id"));

//writer1.write(element3.attributeValue("id")+"\t");

//writer2.write(element3.attributeValue("id")+"\t");

//writer3.write(element3.attributeValue("id")+"\t");

List list6 = element3.elements("Source");

Element element4 = (Element) list6.get(0);

System.out.println("Source:"+ element4.getText());

if(element4.getText().equals("OMIM")){

/*

List ls6 = new ArrayList();

ls6.add(element4.getText());

System.out.println("Source1:"+ element4.getText());

writer1.write(ls6.get(0)+"\t");

*/

List list7 = element3.elements("Reference");

List ls7 = new ArrayList();

Element element7 = (Element) list7.get(0);

ls7.add(element7.getText());

System.out.println("Reference:"+ element7.getText());

writer1.write(ls7.get(0)+"/");

}else if(element4.getText().equals("ICD10")){

/*

List ls6 = new ArrayList();

ls6.add(element4.getText());

System.out.println("Source1:"+ element4.getText());

writer4.write(ls6.get(0)+"\t");

*/

List list7 = element3.elements("Reference");

List ls7 = new ArrayList();

Element element7 = (Element) list7.get(0);

ls7.add(element7.getText());

System.out.println("Reference:"+ element7.getText());

writer4.write(ls7.get(0)+"/");

}else if(element4.getText().equals("MESH")){

/*

List ls6 = new ArrayList();

ls6.add(element4.getText());

System.out.println("Source:"+ element4.getText());

writer2.write(ls6.get(0)+"\t");

*/

List list7 = element3.elements("Reference");

List ls7 = new ArrayList();

Element element7 = (Element) list7.get(0);

ls7.add(element7.getText());

System.out.println("Reference:"+ element7.getText());

writer2.write(ls7.get(0)+"/");

}else if(element4.getText().equals("UMLS")){

/*

List ls6 = new ArrayList();

ls6.add(element4.getText());

System.out.println("Source:"+ element4.getText());

writer3.write(ls6.get(0)+"\t");

*/

List list7 = element3.elements("Reference");

List ls7 = new ArrayList();

Element element7 = (Element) list7.get(0);

ls7.add(element7.getText());

System.out.println("Reference:"+ element7.getText());

writer3.write(ls7.get(0)+"/");

}

}

}

writer1.write("\r\n");

writer2.write("\r\n");

writer3.write("\r\n");

writer4.write("\r\n");

writer1.flush();

writer2.flush();

writer3.flush();

writer4.flush();

}

}

writer1.close();

writer2.close();

writer3.close();

writer4.close();

}catch (DocumentException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值