OutputFormat
public OutputFormat()
Creates an OutputFormat
with no additional whitespace
(indent or new lines) added. The whitespace from the element text content
is fully preserved.
OutputFormat
public OutputFormat(String indent)
Creates an OutputFormat
with the given indent added but no
new lines added. All whitespace from element text will be included.
indent
- is the indent string to be used for indentation (usually a
number of spaces).
OutputFormat
public OutputFormat(String indent,
boolean newlines)
Creates an OutputFormat
with the given indent added with
optional newlines between the Elements. All whitespace from element text
will be included.
indent
- is the indent string to be used for indentation (usually a
number of spaces).newlines
- whether new lines are added to layout the
OutputFormat
public OutputFormat(String indent,
boolean newlines,
String encoding)
Creates an OutputFormat
with the given indent added with
optional newlines between the Elements and the given encoding format.
indent
- is the indent string to be used for indentation (usually a
number of spaces).newlines
- whether new lines are added to layout theencoding
- is the text encoding to use for writing the XML
createCompactFormat
public static OutputFormat createCompactFormat()
A static helper method to create the default compact format. This format
does not have any indentation or newlines after an alement and all other
whitespace trimmed
createPrettyPrint
public static OutputFormat createPrettyPrint()
A static helper method to create the default pretty printing format. This
format consists of an indent of 2 spaces, newlines after each element and
all other whitespace trimmed, and XMTML is false.
getAttributeQuoteCharacter
public char getAttributeQuoteCharacter()
getEncoding
public String getEncoding()
getIndent
public String getIndent()
getLineSeparator
public String getLineSeparator()
getNewLineAfterNTags
public int getNewLineAfterNTags()
isExpandEmptyElements
public boolean isExpandEmptyElements()
isNewLineAfterDeclaration
public boolean isNewLineAfterDeclaration()
DOCUMENT ME!
- true if a new line should be printed following XML declaration
isNewlines
public boolean isNewlines()
isOmitEncoding
public boolean isOmitEncoding()
isPadText
public boolean isPadText()
isSuppressDeclaration
public boolean isSuppressDeclaration()
DOCUMENT ME!
- true if the output of the XML declaration (
<?xml
version="1.0"?>
)
should be suppressed else false.
isTrimText
public boolean isTrimText()
isXHTML
public boolean isXHTML()
Whether or not to use the XHTML standard: like HTML but passes an XML
parser with real, closed tags. Also, XHTML CDATA sections will be output
with the CDATA delimiters: ( "
<![CDATA[ " and "
]]> " ) otherwise, the class HTMLWriter will output the
CDATA text, but not the delimiters.
Default is
false
parseOptions
public int parseOptions(String[] args,
int i)
Parses command line arguments of the form -omitEncoding
-indentSize 3 -newlines -trimText
args
- is the array of command line argumentsi
- is the index in args to start parsing options
- the index of first parameter that we didn't understand
setAttributeQuoteCharacter
public void setAttributeQuoteCharacter(char quoteChar)
Sets the character used to quote attribute values. The specified
character must be a valid XML attribute quote character, otherwise an
IllegalArgumentException
will be thrown.
quoteChar
- The character to use when quoting attribute values.
setEncoding
public void setEncoding(String encoding)
DOCUMENT ME!
encoding
- encoding format
setExpandEmptyElements
public void setExpandEmptyElements(boolean expandEmptyElements)
This will set whether empty elements are expanded from
<tagName>
to
<tagName></tagName>
.
expandEmptyElements
- boolean
indicating whether or not empty
elements should be expanded.
setIndent
public void setIndent(String indent)
This will set the indent String
to use; this is usually a
String
of empty spaces. If you pass null, or the empty
string (""), then no indentation will happen.
Default: none (null)
indent
- String
to use for indentation.
setIndent
public void setIndent(boolean doIndent)
Set the indent on or off. If setting on, will use the value of
STANDARD_INDENT, which is usually two spaces.
doIndent
- if true, set indenting on; if false, set indenting off
setIndentSize
public void setIndentSize(int indentSize)
This will set the indent String
's size; an indentSize of
4 would result in the indention being equivalent to the
String
" " (four space characters).
indentSize
- int
number of spaces in indentation.
setLineSeparator
public void setLineSeparator(String separator)
This will set the new-line separator. The default is \n
.
Note that if the "newlines" property is false, this value is irrelevant.
To make it output the system default line ending string, call
setLineSeparator(System.getProperty("line.separator"))
separator
- String
line separator to use.
setNewLineAfterDeclaration
public void setNewLineAfterDeclaration(boolean newLineAfterDeclaration)
This will set whether a new line is printed after the XML declaration
(assuming it is not supressed.)
newLineAfterDeclaration
- boolean
indicating whether or not to print new
line following the XML declaration. The default is true.
setNewLineAfterNTags
public void setNewLineAfterNTags(int tagCount)
Controls output of a line.separator every tagCount tags when isNewlines
is false. If tagCount equals zero, it means don't do anything special. If
greater than zero, then a line.separator will be output after tagCount
tags have been output. Used when you would like to squeeze the html as
much as possible, but some browsers don't like really long lines. A tag
count of 10 would produce a line.separator in the output after 10 close
tags (including single tags).
setNewlines
public void setNewlines(boolean newlines)
DOCUMENT ME!
newlines
- true
indicates new lines should be printed,
else new lines are ignored (compacted).
setOmitEncoding
public void setOmitEncoding(boolean omitEncoding)
This will set whether the XML declaration (<?xml version="1.0"
encoding="UTF-8"?>
)
includes the encoding of the document. It is common to suppress this in
protocols such as WML and SOAP.
omitEncoding
- boolean
indicating whether or not the XML
declaration should indicate the document encoding.
setPadText
public void setPadText(boolean padText)
Ensure that text immediately preceded by or followed by an element will
be "padded" with a single space. This is used to allow make
browser-friendly HTML, avoiding trimText's transformation of, e.g.,
The quick <b>brown</b> fox
into
The
quick<b>brown</b>fox
(the latter will run the three separate words together into a single
word). This setting is not too useful if you haven't also called
setTrimText(boolean)
.
The padding string will only be added if the text itself starts or ends
with some whitespace characters.
Default: false
padText
- boolean
if true, pad string-element boundaries
setSuppressDeclaration
public void setSuppressDeclaration(boolean suppressDeclaration)
This will set whether the XML declaration (<?xml version="1.0"
encoding="UTF-8"?>
)
is included or not. It is common to suppress this in protocols such as
WML and SOAP.
suppressDeclaration
- boolean
indicating whether or not the XML
declaration should be suppressed.
setTrimText
public void setTrimText(boolean trimText)
This will set whether the text is output verbatim (false) or with
whitespace stripped as per
Element.getTextTrim()
.
Default: false
trimText
- boolean
true=>trim the whitespace, false=>use
text verbatim
setXHTML
public void setXHTML(boolean xhtml)
This will set whether or not to use the XHTML standard: like HTML but
passes an XML parser with real, closed tags. Also, XHTML CDATA sections
will be output with the CDATA delimiters: ( "
<[CDATA[
" and "
]]< ) otherwise, the class HTMLWriter
will output the CDATA text, but not the delimiters.
Default: false
xhtml
- boolean
true=>conform to XHTML, false=>conform
to HTML, can have unclosed tags, etc.