tango.io.Console 翻译

tango.io.Console (r4795)

License:

BSD style: see license.txt

Version:

Feb 2005: Initial release Nov 2005: Heavily revised for unicode Dec 2006: Outback release

Author:

Kris

struct Console #
l低级控制台 IO支持。注意暂时为 charwchardchar中的每一个进行模板化。它变得很明显,如果只操作 utf8,在控制台的使用很有用。细节见下面的 Console.Conduit
重定向( redirected)标准 IO处理(通过一个 shell)操作作为一个可以期望的,尽管重定向内容会受到它只能针对 utf8的限制。
class Input #
作为一个缓冲器的控制台输入模型。注意 ,我们只读 utf8而已。
this(Conduit conduit, bool redirected) [private] #
附加控制台输入到提供的设备。
char[] copyln(bool raw = false) [final] #
返回从控制台可用的下一行,没有可用的东西时返回 null。返回值是缓冲器内容的一个复制品(它的 .dup应用 )
每一行末尾被移除,除非参数 raw设为 true
bool readln(inout char[] content, bool raw = false) [final] #
从控制台取回一行文本并映射它到给定的参数。输入是切割,不是拷贝,因此适合用 .dup。每一行末尾被移除,除非参数 raw被设为 true。没有更多输入时返回 false
InputStream stream() [final] #
返回相关的流。
bool redirected() [final] #
判断这个设备是否已重定向?
返回:
如果已重定向为 true,否则为 false

备注:

从这个模块被实例化时反射控制台重定向状态。
Input redirected(bool yes) [final] #
返回重定向情况到提供的布尔参数。

备注:

设置控制台的重定向状态 ,重定向控制台更有效率 (指明 newline()是否执行自动刷新( flushing))。
InputStream input() [final] #
返回已配置源。
备注:
为控制台输入提供了访问底层的机制。当临时切换输入时用这个保留前一个状态。
Input input(InputStream source) [final] #
转移输入到一个备用源。
class Output #
控制台输出,仅接受 utf8
this(Conduit conduit, bool redirected) [private] #
附加控制台输出到提供的设备。
Output append(char[] x) [final] #
追加到控制台。我们仅接受 UTF8,所以别的编码将通过一些更级别的 API处理。
Output append(Object other) [final] #
追加内容。

参数:

other

一个有有用的toString() 方法的对象。

返回:

如果所有内容已写,返回一个连锁引用。如果不是抛出一个 IOException异常,指出 eof eob
备注:
追加 other.toString() 的结果到控制台。
Output newline() [final] #
添加一个 newline(换行符)并刷新( flush)控制台缓冲器。如果输出被重定向,刷新( flush)不自动发生。
返回:
如果所有内容已写,返回一个连锁引用。如果不是抛出一个 IOException异常,指出 eof eob
备注:
发出一个 newline (换行符)到缓冲区 ,为交互式控制台自动刷新( autoflush)当前缓冲器内容。重定向控制台不自动刷新,开启一个换行( newline)。
Output flush() [final] #
明确地刷新控制台的输出。

返回:

如果所有内容已写,返回一个连锁引用。如果不是抛出一个 IOException异常,指出 eof eob

备注:

刷新(Flushes )控制台缓冲器到附加管道。

OutputStream stream() [final] #
返回关联的流。
bool redirected() [final] #
判断这个设备是否已重定向?
返回:
如果已重定向为 true,否则为 false

备注:

反映控制台重定向状态。
Output redirected(bool yes) [final] #
设置重定向情况到提供的布尔参数。

备注:

设置控制台的重定向状态 ,重定向控制台更有效率 (指明 newline()是否执行自动刷新( flushing))。
OutputStream output() [final] #
返回已配置输出接收器( sink)
备注:
备注:
为控制台输出提供了访问底层的机制。当临时切换输出时用这个保留前一个状态。
Output output(OutputStream sink) [final] #
转换输出到一个备用接收器( sink)。
class Conduit : Device #
管道为具体地处理控制台设备。在 Win32平台,这照顾到某些实现细节。
注意,在 linuxWin32平台控制都固定为 utf8。后一种实际上原生的是 utf16,但让开发者真的不伤脑筋处理这个不同很麻烦。尤其是, Win32控制台函数不能与重定向工作。这就导致另一个困难,可以被断言改善的控制台 I/O总是 Utf8,在所有模式中。
char[] toString() [override] #
返回这个管道的名字。
this(uint handle) #
和给定的手柄( handle)关联这个设备。
这是严格地为适应现有设备 ,Stdoutfriends
void reopen(Handle handle_) [private, override] #
获得访问标准的 IO手柄的机会。
Console.Input Cin [static] #
全局表示的控制台 IO
标准输入流。
Console.Output Cout [static] # Console.Output Cerr [static] #
标准错误流。
static this() #
实例化控制台访问。
static ~this() #
退出前刷新输出。
(来自 Frits Van Bommel的好主意 )
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值