public class StdXMLReader extends Object implements IXMLReader
| Constructor and Description |
|---|
StdXMLReader(InputStream stream)
Initializes the XML reader.
|
StdXMLReader(Reader reader)
Initializes the XML reader.
|
StdXMLReader(String publicID,
String systemID)
Initializes the reader from a system and public ID.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
atEOF()
Returns true if there are no more characters left to be read.
|
boolean |
atEOFOfCurrentStream()
Returns true if the current stream has no more characters left to be
read.
|
static IXMLReader |
fileReader(String filename)
Creates a new reader using a file as input.
|
protected void |
finalize()
Cleans up the object when it's destroyed.
|
protected String |
getEncoding(String str)
Scans the encoding from an <?xml...?> tag.
|
int |
getLineNr()
Returns the line number of the data in the current stream.
|
String |
getPublicID()
Returns the current public ID.
|
int |
getStreamLevel()
Returns the current "level" of the stream on the stack of streams.
|
String |
getSystemID()
Returns the current system ID.
|
Reader |
openStream(String publicID,
String systemID)
Opens a stream from a public and system ID.
|
char |
read()
Reads a character.
|
void |
setPublicID(String publicID)
Sets the public ID of the current stream.
|
void |
setSystemID(String systemID)
Sets the system ID of the current stream.
|
void |
startNewStream(Reader reader)
Starts a new stream from a Java reader.
|
void |
startNewStream(Reader reader,
boolean isInternalEntity)
Starts a new stream from a Java reader.
|
protected Reader |
stream2reader(InputStream stream,
StringBuffer charsRead)
Converts a stream to a reader while detecting the encoding.
|
static IXMLReader |
stringReader(String str)
Creates a new reader using a string as input.
|
void |
unread(char ch)
Pushes the last character read back to the stream.
|
public StdXMLReader(String publicID, String systemID) throws MalformedURLException, FileNotFoundException, IOException
publicID - the public ID which may be null.systemID - the non-null system ID.MalformedURLException - if the system ID does not contain a valid URLFileNotFoundException - if the system ID refers to a local file which does not existIOException - if an error occurred opening the streampublic StdXMLReader(Reader reader)
reader - the input for the XML data.public StdXMLReader(InputStream stream) throws IOException
stream - the input for the XML data.IOException - if an I/O error occurredpublic static IXMLReader stringReader(String str)
str - the string containing the XML datapublic static IXMLReader fileReader(String filename) throws FileNotFoundException, IOException
filename - the name of the file containing the XML dataFileNotFoundException - if the file could not be foundIOException - if an I/O error occurredprotected void finalize()
throws Throwable
protected String getEncoding(String str)
str - the first tag in the XML data.protected Reader stream2reader(InputStream stream, StringBuffer charsRead) throws IOException
stream - the input for the XML data.charsRead - buffer where to put characters that have been readIOException - if an I/O error occurredpublic char read()
throws IOException
read in interface IXMLReaderIOException - if no character could be readpublic boolean atEOFOfCurrentStream()
throws IOException
atEOFOfCurrentStream in interface IXMLReaderIOException - if an I/O error occurredpublic boolean atEOF()
throws IOException
atEOF in interface IXMLReaderIOException - if an I/O error occurredpublic void unread(char ch)
throws IOException
unread in interface IXMLReaderch - the character to push back.IOException - if an I/O error occurredpublic Reader openStream(String publicID, String systemID) throws MalformedURLException, FileNotFoundException, IOException
openStream in interface IXMLReaderpublicID - the public ID, which may be nullsystemID - the system ID, which is never nullMalformedURLException - if the system ID does not contain a valid URLFileNotFoundException - if the system ID refers to a local file which does not existIOException - if an error occurred opening the streampublic void startNewStream(Reader reader)
startNewStream in interface IXMLReaderreader - the non-null reader to read the new data frompublic void startNewStream(Reader reader, boolean isInternalEntity)
startNewStream in interface IXMLReaderreader - the non-null reader to read the new data fromisInternalEntity - true if the reader is produced by resolving
an internal entitypublic int getStreamLevel()
getStreamLevel in interface IXMLReaderpublic int getLineNr()
getLineNr in interface IXMLReaderpublic void setSystemID(String systemID) throws MalformedURLException
setSystemID in interface IXMLReadersystemID - the system IDMalformedURLException - if the system ID does not contain a valid URLpublic void setPublicID(String publicID)
setPublicID in interface IXMLReaderpublicID - the public IDpublic String getSystemID()
getSystemID in interface IXMLReaderpublic String getPublicID()
getPublicID in interface IXMLReader