LineWrappingTextWriter Class |
Namespace: Ookii.CommandLine
The LineWrappingTextWriter type exposes the following members.
Name | Description | |
---|---|---|
![]() | LineWrappingTextWriter |
Initializes a new instance of the LineWrappingTextWriter class.
|
Name | Description | |
---|---|---|
![]() | BaseWriter |
Gets the TextWriter that this LineWrappingTextWriter is writing to.
|
![]() | Encoding |
Returns the Encoding in which the output is written.
(Overrides TextWriterEncoding.) |
![]() | FormatProvider | (Inherited from TextWriter.) |
![]() | Indent |
Gets or sets the amount of characters to indent all but the first line.
|
![]() | MaximumLineLength |
Gets the maximum length of a line in the output.
|
![]() | NewLine | (Inherited from TextWriter.) |
Name | Description | |
---|---|---|
![]() | Close | (Inherited from TextWriter.) |
![]() | CreateObjRef | (Inherited from MarshalByRefObject.) |
![]() | Dispose | (Inherited from TextWriter.) |
![]() | Dispose(Boolean) |
Releases the unmanaged resources used by the LineWrappingTextWriter and optionally releases the managed resources.
(Overrides TextWriterDispose(Boolean).) |
![]() | Equals | (Inherited from Object.) |
![]() | Finalize | (Inherited from Object.) |
![]() | Flush |
Clears all buffers for the current writer and causes any buffered data to be written to the underlying device.
(Overrides TextWriterFlush.) |
![]() ![]() | ForConsoleError |
Gets a LineWrappingTextWriter that writes to the standard error stream.
|
![]() ![]() | ForConsoleOut |
Gets a LineWrappingTextWriter that writes to the standard output stream.
|
![]() ![]() | ForStringWriter(Int32) |
Gets a LineWrappingTextWriter that writes to a StringWriter.
|
![]() ![]() | ForStringWriter(Int32, IFormatProvider) |
Gets a LineWrappingTextWriter that writes to a StringWriter using the specified format provider.
|
![]() | GetHashCode | (Inherited from Object.) |
![]() | GetLifetimeService | (Inherited from MarshalByRefObject.) |
![]() | GetType | (Inherited from Object.) |
![]() | InitializeLifetimeService | (Inherited from MarshalByRefObject.) |
![]() | MemberwiseClone | (Inherited from Object.) |
![]() | MemberwiseClone(Boolean) | (Inherited from MarshalByRefObject.) |
![]() | ResetIndent |
Restarts writing on the beginning of the line, without indenting that line.
|
![]() | ToString | (Inherited from Object.) |
![]() | Write(Char) | (Inherited from TextWriter.) |
![]() | Write(Boolean) | (Inherited from TextWriter.) |
![]() | Write(Int32) | (Inherited from TextWriter.) |
![]() | Write(UInt32) | (Inherited from TextWriter.) |
![]() | Write(Int64) | (Inherited from TextWriter.) |
![]() | Write(UInt64) | (Inherited from TextWriter.) |
![]() | Write(Single) | (Inherited from TextWriter.) |
![]() | Write(Double) | (Inherited from TextWriter.) |
![]() | Write(Decimal) | (Inherited from TextWriter.) |
![]() | Write(Object) | (Inherited from TextWriter.) |
![]() | Write(Char) |
Writes a character to the text stream.
(Overrides TextWriterWrite(Char).) |
![]() | Write(String) |
Writes a string to the text stream.
(Overrides TextWriterWrite(String).) |
![]() | Write(String, Object) | (Inherited from TextWriter.) |
![]() | Write(String, Object) | (Inherited from TextWriter.) |
![]() | Write(String, Object, Object) | (Inherited from TextWriter.) |
![]() | Write(Char, Int32, Int32) |
Writes a subarray of characters to the text stream.
(Overrides TextWriterWrite(Char, Int32, Int32).) |
![]() | Write(String, Object, Object, Object) | (Inherited from TextWriter.) |
![]() | WriteLine | (Inherited from TextWriter.) |
![]() | WriteLine(Char) | (Inherited from TextWriter.) |
![]() | WriteLine(Char) | (Inherited from TextWriter.) |
![]() | WriteLine(Boolean) | (Inherited from TextWriter.) |
![]() | WriteLine(Int32) | (Inherited from TextWriter.) |
![]() | WriteLine(UInt32) | (Inherited from TextWriter.) |
![]() | WriteLine(Int64) | (Inherited from TextWriter.) |
![]() | WriteLine(UInt64) | (Inherited from TextWriter.) |
![]() | WriteLine(Single) | (Inherited from TextWriter.) |
![]() | WriteLine(Double) | (Inherited from TextWriter.) |
![]() | WriteLine(Decimal) | (Inherited from TextWriter.) |
![]() | WriteLine(String) | (Inherited from TextWriter.) |
![]() | WriteLine(Object) | (Inherited from TextWriter.) |
![]() | WriteLine(String, Object) | (Inherited from TextWriter.) |
![]() | WriteLine(String, Object) | (Inherited from TextWriter.) |
![]() | WriteLine(Char, Int32, Int32) | (Inherited from TextWriter.) |
![]() | WriteLine(String, Object, Object) | (Inherited from TextWriter.) |
![]() | WriteLine(String, Object, Object, Object) | (Inherited from TextWriter.) |
Name | Description | |
---|---|---|
![]() | CoreNewLine | (Inherited from TextWriter.) |
The LineWrappingTextWriter will buffer the data written to it until an explicit new line is present in the text, or until the length of the buffered data exceeds the value of the MaximumLineLength property.
If the length of the buffered data exceeds the value of the MaximumLineLength property, the LineWrappingTextWriter will attempt to find a white space character to break the line at. If such a white space character is found, everything before that character is output to the BaseWriter, and everything after that character is kept in the buffer. The white space character itself is not written to the output.
If no suitable place to break the line could be found, the line is broken at the maximum line length. This may occur in the middle of a word.
After a line break (either one that was caused by wrapping or one that was part of the text), the next line is indented by the number of characters specified by the Indent property. The length of the indentation counts towards the maximum line length.
When the Flush method is called, the current contents of the buffer are written to the BaseWriter, followed by a new line, unless the buffer is empty. If the buffer contains only indentation, it is considered empty and no new line is written. Calling Flush has the same effect as writing a new line to the LineWrappingTextWriter if the buffer is not empty. The LineWrappingTextWriter is flushed when the Dispose(Boolean) method is called.
The ResetIndent property can be used to move the output position back to the beginning of the line. If the buffer is not empty, is is first flushed and indentation is reset to zero on the next line. After the next line break, indentation will again be set to the value of the Indent property.