public class XMLDecoder extends Object implements AutoCloseable
XMLDecoder
类用于读取XML文件的创建和使用
XMLEncoder
就像
ObjectInputStream
。例如,可以使用以下片断读写的
XMLEncoder
类定义XML文档的第一个对象:
xmldecoder a新XMLDecoder(新的缓冲输入流(新的输入(“测试。XML”)));结果readobject()对象D.;D.();
更多的信息,你也可能想看看Long Term Persistence of JavaBeans Components: XML Schema,在秋千上连接的一篇文章。
XMLEncoder
,
ObjectInputStream
Constructor and Description |
---|
XMLDecoder(InputSource is)
创建解析XML档案的
XMLEncoder 类创建了一个新的解码器。
|
XMLDecoder(InputStream in)
建立阅读档案的
XMLEncoder 类创建一个新的输入流。
|
XMLDecoder(InputStream in, Object owner)
建立阅读档案的
XMLEncoder 类创建一个新的输入流。
|
XMLDecoder(InputStream in, Object owner, ExceptionListener exceptionListener)
建立阅读档案的
XMLEncoder 类创建一个新的输入流。
|
XMLDecoder(InputStream in, Object owner, ExceptionListener exceptionListener, ClassLoader cl)
建立阅读档案的
XMLEncoder 类创建一个新的输入流。
|
Modifier and Type | Method and Description |
---|---|
void |
close()
此方法关闭与此流关联的输入流。
|
static DefaultHandler |
createHandler(Object owner, ExceptionListener el, ClassLoader cl)
创建SAX解析器,可以用来解析嵌入式XML档案的
XMLEncoder 类创建了一个新的处理程序。
|
ExceptionListener |
getExceptionListener()
获取此流的异常处理程序。
|
Object |
getOwner()
获取此解码器的所有者。
|
Object |
readObject()
从下面的输入流读取下一个对象。
|
void |
setExceptionListener(ExceptionListener exceptionListener)
设置此流
exceptionListener 异常处理程序。
|
void |
setOwner(Object owner)
设置此解码器业主
owner 。
|
public XMLDecoder(InputStream in)
XMLEncoder
类创建一个新的输入流。
in
-基础流。
XMLEncoder.XMLEncoder(java.io.OutputStream)
public XMLDecoder(InputStream in, Object owner)
XMLEncoder
类创建一个新的输入流。
in
-基础流。
owner
-这流人。
public XMLDecoder(InputStream in, Object owner, ExceptionListener exceptionListener)
XMLEncoder
类创建一个新的输入流。
in
-基础流。
owner
-这流人。
exceptionListener
-流的异常处理程序;如果
null
默认侦听器将使用异常。
public XMLDecoder(InputStream in, Object owner, ExceptionListener exceptionListener, ClassLoader cl)
XMLEncoder
类创建一个新的输入流。
in
-基础流。
null
可能没有错误,但由此产生的xmldecoder将无用
owner
-这流人。
null
是法律价值
exceptionListener
-流的异常处理程序,或
null
使用默认的
cl
用于实例化对象的类装载器。
null
表示默认的类加载器应该使用
public XMLDecoder(InputSource is)
XMLEncoder
类创建了一个新的解码器。如果输入源
is
是
null
,没有异常被抛出,没有执行分析。这种行为是类似于其他构造函数使用
InputStream
作为参数的行为。
is
-输入源解析
public void close()
close
接口
AutoCloseable
public void setExceptionListener(ExceptionListener exceptionListener)
exceptionListener
异常处理程序。当此流捕获可恢复的异常时,将通知异常处理程序。
exceptionListener
-该流的异常处理程序;如果
null
默认侦听器将使用异常。
getExceptionListener()
public ExceptionListener getExceptionListener()
setExceptionListener(java.beans.ExceptionListener)
public Object readObject()
ArrayIndexOutOfBoundsException
如果流不包含对象(或没有更多的对象)
XMLEncoder.writeObject(java.lang.Object)
public void setOwner(Object owner)
owner
。
owner
-此解码器的主人。
getOwner()
public Object getOwner()
setOwner(java.lang.Object)
public static DefaultHandler createHandler(Object owner, ExceptionListener el, ClassLoader cl)
XMLEncoder
类创建了一个新的处理程序。的
owner
应该如果解析XML文档包含方法调用在< >元素中使用java。的
null
值可能导致非法解析在这种情况下。同样的问题可能会发生,如果
owner
类不包含预期的调用方法。详情请看
here。
owner
-默认处理程序可以作为一个值<java >元的主人
el
-解析器的异常处理程序,或
null
使用默认的异常处理程序
cl
用于实例化对象的类装载器,或
null
使用默认的类加载器
DefaultHandler
SAX解析器的实例
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.