⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 staxreader.java

📁 xstream是一个把java object序列化成xml文件的开源库,轻便好用
💻 JAVA
字号:
package com.thoughtworks.xstream.io.xml;import com.thoughtworks.xstream.converters.ErrorWriter;import com.thoughtworks.xstream.io.StreamException;import javax.xml.namespace.QName;import javax.xml.stream.XMLStreamConstants;import javax.xml.stream.XMLStreamException;import javax.xml.stream.XMLStreamReader;/** * A reader using the StAX API. * * @author James Strachan * @version $Revision: 578 $ */public class StaxReader extends AbstractPullReader {    private final QNameMap qnameMap;    private final XMLStreamReader in;    public StaxReader(QNameMap qnameMap, XMLStreamReader in) {        this.qnameMap = qnameMap;        this.in = in;        moveDown();    }    protected int pullNextEvent() {        try {            switch(in.next()) {                case XMLStreamConstants.START_DOCUMENT:                case XMLStreamConstants.START_ELEMENT:                    return START_NODE;                case XMLStreamConstants.END_DOCUMENT:                case XMLStreamConstants.END_ELEMENT:                    return END_NODE;                case XMLStreamConstants.CHARACTERS:                    return TEXT;                case XMLStreamConstants.COMMENT:                    return COMMENT;                default:                    return OTHER;            }        } catch (XMLStreamException e) {            throw new StreamException(e);        }    }    protected String pullElementName() {        // let the QNameMap handle any mapping of QNames to Java class names        QName qname = in.getName();        return qnameMap.getJavaClassName(qname);    }    protected String pullText() {        return in.getText();    }    public String getAttribute(String name) {        return in.getAttributeValue(null, name);    }    public String getAttribute(int index) {        return in.getAttributeValue(index);    }    public int getAttributeCount() {        return in.getAttributeCount();    }    public String getAttributeName(int index) {        return in.getAttributeLocalName(index);    }    public void appendErrors(ErrorWriter errorWriter) {        errorWriter.add("line number", String.valueOf(in.getLocation().getLineNumber()));    }    public void close() {        try {            in.close();        } catch (XMLStreamException e) {            throw new StreamException(e);        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -