# LSOutput

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

# LSOutput

`
public


interface
LSOutput
`  
`


`

|-------------------------|
| org.w3c.dom.ls.LSOutput |

<br />

*** ** * ** ***

This interface represents an output destination for data.

This interface allows an application to encapsulate information about an output destination in a single object, which may include a URI, a byte stream (possibly with a specified encoding), a base URI, and/or a character stream.

The exact definitions of a byte stream and a character stream are binding dependent.

The application is expected to provide objects that implement this interface whenever such objects are needed. The application can either provide its own objects that implement this interface, or it can use the generic factory method`DOMImplementationLS.createLSOutput()`to create objects that implement this interface.

The`LSSerializer`will use the`LSOutput`object to determine where to serialize the output to. The`LSSerializer`will look at the different outputs specified in the`LSOutput`in the following order to know which one to output to, the first one that is not null and not an empty string will be used:

1. `LSOutput.characterStream`
2. `LSOutput.byteStream`
3. `LSOutput.systemId`

`LSOutput`objects belong to the application. The DOM implementation will never modify them (though it may make copies and modify the copies, if necessary).

See also the[Document Object Model (DOM) Level 3 Load and Save Specification](http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407).

## Summary

|                                                                                                                                                                                                            ### Public methods                                                                                                                                                                                                             ||
|------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` abstract `[OutputStream](https://developer.android.com/reference/java/io/OutputStream) | ` `[getByteStream](https://developer.android.com/reference/org/w3c/dom/ls/LSOutput#getByteStream())`() ` An attribute of a language and binding dependent type that represents a writable stream of bytes.                                                                                                                                      |
| ` abstract `[Writer](https://developer.android.com/reference/java/io/Writer)             | ` `[getCharacterStream](https://developer.android.com/reference/org/w3c/dom/ls/LSOutput#getCharacterStream())`() ` An attribute of a language and binding dependent type that represents a writable stream to which 16-bit units can be output.                                                                                                 |
| ` abstract `[String](https://developer.android.com/reference/java/lang/String)           | ` `[getEncoding](https://developer.android.com/reference/org/w3c/dom/ls/LSOutput#getEncoding())`() ` The character encoding to use for the output.                                                                                                                                                                                              |
| ` abstract `[String](https://developer.android.com/reference/java/lang/String)           | ` `[getSystemId](https://developer.android.com/reference/org/w3c/dom/ls/LSOutput#getSystemId())`() ` The system identifier, a URI reference \[[IETF RFC 2396](http://www.ietf.org/rfc/rfc2396.txt)\], for this output destination.                                                                                                              |
| ` abstract void`                                                                         | ` `[setByteStream](https://developer.android.com/reference/org/w3c/dom/ls/LSOutput#setByteStream(java.io.OutputStream))`(`[OutputStream](https://developer.android.com/reference/java/io/OutputStream)` byteStream) ` An attribute of a language and binding dependent type that represents a writable stream of bytes.                         |
| ` abstract void`                                                                         | ` `[setCharacterStream](https://developer.android.com/reference/org/w3c/dom/ls/LSOutput#setCharacterStream(java.io.Writer))`(`[Writer](https://developer.android.com/reference/java/io/Writer)` characterStream) ` An attribute of a language and binding dependent type that represents a writable stream to which 16-bit units can be output. |
| ` abstract void`                                                                         | ` `[setEncoding](https://developer.android.com/reference/org/w3c/dom/ls/LSOutput#setEncoding(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String)` encoding) ` The character encoding to use for the output.                                                                                                 |
| ` abstract void`                                                                         | ` `[setSystemId](https://developer.android.com/reference/org/w3c/dom/ls/LSOutput#setSystemId(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String)` systemId) ` The system identifier, a URI reference \[[IETF RFC 2396](http://www.ietf.org/rfc/rfc2396.txt)\], for this output destination.                 |

## Public methods

### getByteStream

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public abstract OutputStream getByteStream ()
```

An attribute of a language and binding dependent type that represents a writable stream of bytes.

<br />

|                                       Returns                                        ||
|------------------------------------------------------------------------------|--------|
| [OutputStream](https://developer.android.com/reference/java/io/OutputStream) | <br /> |

### getCharacterStream

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public abstract Writer getCharacterStream ()
```

An attribute of a language and binding dependent type that represents a writable stream to which 16-bit units can be output.

<br />

|                                 Returns                                  ||
|------------------------------------------------------------------|--------|
| [Writer](https://developer.android.com/reference/java/io/Writer) | <br /> |

### getEncoding

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public abstract String getEncoding ()
```

The character encoding to use for the output. The encoding must be a string acceptable for an XML encoding declaration (\[[XML 1.0](http://www.w3.org/TR/2004/REC-xml-20040204)\] section 4.3.3 "Character Encoding in Entities"), it is recommended that character encodings registered (as charsets) with the Internet Assigned Numbers Authority \[[IANA-CHARSETS](ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets)\] should be referred to using their registered names.

<br />

|                                  Returns                                   ||
|--------------------------------------------------------------------|--------|
| [String](https://developer.android.com/reference/java/lang/String) | <br /> |

### getSystemId

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public abstract String getSystemId ()
```

The system identifier, a URI reference \[[IETF RFC 2396](http://www.ietf.org/rfc/rfc2396.txt)\], for this output destination.  
If the system ID is a relative URI reference (see section 5 in \[[IETF RFC 2396](http://www.ietf.org/rfc/rfc2396.txt)\]), the behavior is implementation dependent.

<br />

|                                  Returns                                   ||
|--------------------------------------------------------------------|--------|
| [String](https://developer.android.com/reference/java/lang/String) | <br /> |

### setByteStream

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public abstract void setByteStream (OutputStream byteStream)
```

An attribute of a language and binding dependent type that represents a writable stream of bytes.

<br />

|             Parameters              ||
|--------------|-----------------------|
| `byteStream` | `OutputStream` <br /> |

### setCharacterStream

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public abstract void setCharacterStream (Writer characterStream)
```

An attribute of a language and binding dependent type that represents a writable stream to which 16-bit units can be output.

<br />

|             Parameters             ||
|-------------------|-----------------|
| `characterStream` | `Writer` <br /> |

### setEncoding

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public abstract void setEncoding (String encoding)
```

The character encoding to use for the output. The encoding must be a string acceptable for an XML encoding declaration (\[[XML 1.0](http://www.w3.org/TR/2004/REC-xml-20040204)\] section 4.3.3 "Character Encoding in Entities"), it is recommended that character encodings registered (as charsets) with the Internet Assigned Numbers Authority \[[IANA-CHARSETS](ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets)\] should be referred to using their registered names.

<br />

|         Parameters          ||
|------------|-----------------|
| `encoding` | `String` <br /> |

### setSystemId

Added in[API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public abstract void setSystemId (String systemId)
```

The system identifier, a URI reference \[[IETF RFC 2396](http://www.ietf.org/rfc/rfc2396.txt)\], for this output destination.  
If the system ID is a relative URI reference (see section 5 in \[[IETF RFC 2396](http://www.ietf.org/rfc/rfc2396.txt)\]), the behavior is implementation dependent.

<br />

|         Parameters          ||
|------------|-----------------|
| `systemId` | `String` <br /> |