java desktop类_JDK6.0新特性:Desktop和SystemTray类

public class StaxTester {

public static void main(String[] args) throws XMLStreamException, FileNotFoundException {

readXMLByStAX();//用XMLEventReader解析xml文档

writeXMLByStAX();//用XMLStreamWriter写xml文档

}

private static void readXMLByStAX() throws XMLStreamException, FileNotFoundException {

XMLInputFactory xmlif = XMLInputFactory.newInstance();

XMLEventReader xmler = xmlif.createXMLEventReader(StaxTester.class.getResourceAsStream("test.xml"));

XMLEvent event;

StringBuffer parsingResult = new StringBuffer();

while (xmler.hasNext()) {

event = xmler.nextEvent();

if (event.isStartElement()) { //如果解析的是起始标记

StartElement se = event.asStartElement();

parsingResult.append("

parsingResult.append(se.getName());

if(se.getName().getLocalPart().equals("catalog")) {

parsingResult.append(" id=\"");

parsingResult.append(se.getAttributeByName(new QName("id")).getValue());

parsingResult.append("\"");

}

parsingResult.append(">");

} else if (event.isCharacters()) { //如果解析的是文本内容

parsingResult.append(event.asCharacters().getData());

} else if(event.isEndElement()){ //如果解析的是结束标记

parsingResult.append("");

parsingResult.append(event.asEndElement().getName());

parsingResult.append(">");

}

}

System.out.println(parsingResult);

}

private static void writeXMLByStAX() throws XMLStreamException, FileNotFoundException {

XMLOutputFactory xmlof = XMLOutputFactory.newInstance();

XMLStreamWriter xmlw = xmlof.createXMLStreamWriter(new FileOutputStream("output.xml"));

// 写入默认的 XML 声明到xml文档

xmlw.writeStartDocument();

xmlw.writeCharacters("\n");

// 写入注释到xml文档

xmlw.writeComment("testing comment");

xmlw.writeCharacters("\n");

// 写入一个catalogs根元素

xmlw.writeStartElement("catalogs");

xmlw.writeNamespace("myNS", "http://blog.csdn.net/Chinajash");

xmlw.writeAttribute("owner","Chinajash");

xmlw.writeCharacters("\n");

// 写入子元素catalog

xmlw.writeStartElement("http://blog.csdn.net/Chinajash", "catalog");

xmlw.writeAttribute("id","007");

xmlw.writeCharacters("Apparel");

// 写入catalog元素的结束标签

xmlw.writeEndElement();

// 写入catalogs元素的结束标签

xmlw.writeEndElement();

// 结束 XML 文档

xmlw.writeEndDocument();

xmlw.close();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值