lineTerminator property - Stdout class - dart:io library (original) (raw)
String getlineTerminator
inherited
Line ending appended by writeln
, and replacing "\n"
in some methods.
Must be one of the values "\n"
(the default) or "\r\n"
.
When set to "\r\n"
, the methods write
, writeln
, writeAll
andwriteCharCode
will convert embedded newlines, "\n"
, in their arguments to "\r\n"
. If their arguments already contain "\r\n"
sequences, then these sequences will be not be converted. This is true even if the sequence is generated across different method calls.
If lineTerminator
is "\n"
then the written strings are not modified. Setting lineTerminator
to Platform.lineTerminator will result in "write" methods outputting the line endings for the platform:
stdout.lineTerminator = Platform.lineTerminator;
stderr.lineTerminator = Platform.lineTerminator;
The value of lineTerminator
has no effect on byte-oriented methods such as add
.
The value of lineTerminator
does not effect the output of the printfunction.
Throws ArgumentError if set to a value other than "\n"
or "\r\n"
.
Implementation
//
/// Setting `lineTerminator` to [Platform.lineTerminator] will result in
/// "write" methods outputting the line endings for the platform:
///
/// ```dart
/// stdout.lineTerminator = Platform.lineTerminator;
/// stderr.lineTerminator = Platform.lineTerminator;
/// ```
///
/// The value of `lineTerminator` has no effect on byte-oriented methods
/// such as [add].
///
/// The value of `lineTerminator` does not effect the output of the [print]
/// function.
///
/// Throws [ArgumentError] if set to a value other than `"\n"` or `"\r\n"`.
String get lineTerminator => _windowsLineTerminator ? "\r\n" : "\n";
setlineTerminator (String lineTerminator)
inherited
Implementation
set lineTerminator(String lineTerminator) {
if (lineTerminator == "\r\n") {
assert(!_lastWrittenCharIsCR || _windowsLineTerminator);
_windowsLineTerminator = true;
} else if (lineTerminator == "\n") {
_windowsLineTerminator = false;
_lastWrittenCharIsCR = false;
} else {
throw ArgumentError.value(
lineTerminator,
"lineTerminator",
r'invalid line terminator, must be one of "\r" or "\r\n"',
);
}
}