Stdout类
连接到进程的标准输出或错误的IOSink。
提供了一个阻塞的IOSink
,因此使用它写入会阻塞,直到输出被写入。
在某些情况下,这种阻塞行为是不受欢迎的,因为它不提供dart:io
一般暴露的相同的非阻塞行为。使用nonBlocking属性以获取一个具有非阻塞行为的IOSink。
此类还可以用于检查stdout
或stderr
是否连接到终端,并查询某些终端属性。
从StreamSink继承的addError API,如果调用它而没有对done进行错误处理器,则会导致未处理的异步错误。
lineTerminator字段由write、writeln、writeAll和writeCharCode方法使用,以转换"\n"
。默认情况下,"\n"
将按原样输出。
- 实现类型
属性
- done → Future
- 当消费者关闭或发生错误时将完成的未来。no setterinherited
- encoding ↔ Encoding
- 写入字符串时使用的Encoding。getter/setter pairinherited
- hashCode → int
- 此对象的哈希值。no setterinherited
- hasTerminal → bool
- 是否有终端连接到stdout。no setter
- lineTerminator ↔ String
- writeln附加的行结束符,并在某些方法中替换
"\n"
。getter/setter pairinherited - nonBlocking → IOSink
- 相同输出的非阻塞IOSink。no setter
- runtimeType → Type
- 对象运行时类型的表示。no setterinherited
- supportsAnsiEscapes → bool
- 是否连接到支持ANSI转义序列的终端。no setter
- terminalColumns → int
- 终端的列数。no setter
- terminalLines → int
- 终端的行数。no setter
方法
-
add(
List< int> data) → void - 将字节数据
data
添加到目标消费者,忽略encoding。inherited -
addError(
Object error, [StackTrace? stackTrace]) → void - 将错误作为错误事件传递给目标消费者。inherited
-
addStream(
Stream< List< > stream) → Futureint> > - 添加给定
stream
的所有元素。inherited -
close(
) → Future - 关闭目标消费者。inherited
-
flush(
) → Future - 返回一个 Future,一旦所有缓冲数据被底层的 StreamConsumer 接受,它将完成。inherited
-
noSuchMethod(
Invocation invocation) → dynamic - 当访问不存在的方法或属性时被调用。inherited
-
toString(
) → String - 此对象的字符串表示形式。inherited
-
write(
Object? object) → void - 通过调用 Object.toString 将
object
转换为字符串,并将结果的编码添加到目标消费者。inherited -
writeAll(
Iterable objects, [String sep = ""]) → void - 遍历给定的
objects
并按顺序将它们 write。inherited -
writeCharCode(
int charCode) → void - 写入
charCode
的字符。inherited -
writeln(
[Object? object = ""]) → void - 通过调用 Object.toString 将
object
转换为字符串,并写入到this
,后跟一个换行符。inherited
运算符
-
operator ==(
Object other) → bool - 等于运算符。inherited