概述
tango.io.Stdout(r4774)
License:
BSD style: see license.txt
Version:
Nov 2005: Initial release
Author:
Kris
标准、全局的格式化控制台输出。如果你不需要格式化输出或unicode转换,考虑直接使用模块 tango.io.Console。如果你需要格式化,但不输出到控制台,考虑使用tango.text.convert.Format 代替。
Stdout & Stderr 展示这些用法类型:
1 2 3 4 5 6 7 8 9 10 11 12 13 | Stdout ("hello"); => hello Stdout (1); => 1 Stdout (3.14); => 3.14 Stdout ('b'); => b Stdout (1, 2, 3); => 1, 2, 3 Stdout ("abc", 1, 2, 3); => abc, 1, 2, 3 Stdout ("abc", 1, 2) ("foo"); => abc, 1, 2foo Stdout ("abc") ("def") (3.14); => abcdef3.14 Stdout.format ("abc {}", 1); => abc 1 Stdout.format ("abc {}:{}", 1, 2); => abc 1:2 Stdout.format ("abc {1}:{0}", 1, 2); => abc 2:1 Stdout.format ("abc ", 1); => abc |
注意最后的例子不抛出异常。有几个漏失一个参数的使用情况是合法的,因此我们目前不强迫任何特殊的陷阱机制。
刷新(flushing)输出通过flush()方法获得,或通过一个空的小括号对:
1 2 3 4 5 | Stdout ("hello world") (); Stdout ("hello world").flush; Stdout.format ("hello {}", "world") (); Stdout.format ("hello {}", "world").flush; |
特殊字符序列,如“ n”是直接写到输出无任何转换(不过可以插入一个输出过滤器根据需要完成转换)。特定平台的新行通过newline()方法产生,当这样配置完成时也会刷新输出:
1 2 3 | Stdout ("hello ") ("world").newline; Stdout.format ("hello {}", "world").newline; Stdout.formatln ("hello {}", "world"); |
包括Stdout和Stderr的format()方法支持格式选项范围,通过tango.text.convert.Layout模块提供并且可以将它扩展;它已经以这种方式配置好支持完整的I18N。要启用法语(French)Stdout,像这样做:
1 2 3 | import tango.text.locale.Locale; Stdout.layout = new Locale (Culture.getCulture ("fr-FR")); |
注意Stdout是一个共享的实体,所以它的每次使用会受到前一个例子的影响。要让应用程序支持多个地区,可以创建多个区域实例并以适当方式缓存他们。
Stdout.layout也可用于只格式化而不输出到控制台如下面的例子:
1 2 | char[] str = Stdout.layout.convert("{} and {}", 42, "abc"); //str is "42 and abc" |
如果你已经有Stdout导入,这是很有用的。
要注意的是在使用的输出流被这些全局实例暴露--这可以起杠杆作用,例如,要复制一个文件到标准输出,可这样做:
1 | Stdout.copy (new File ("myfile")); |
注意Stdout不是预期线程安全的。为了使用原子控制台I/O(atomic console I/O),使用tango.util.log.Trace或者标准的记录工具(standard logging facilities)。
-
alias FormatOutput!(char) Output [private] ¶#
- 当这个模块被载入时构建 Stdout 和 Stderr 。 Output Stdout [public, static] ¶# Output Stderr [public, static] ¶#
- 全局错误输出。
Copyright (c) 2005 Kris Bell. All rights reserved :: Generated by dil on Sat Jun 27 18:19:39 2009. Rendered by kandil.
最后
以上就是真实大炮为你收集整理的tango.io.Stdout 翻译tango.io.Stdout(r4774)的全部内容,希望文章能够帮你解决tango.io.Stdout 翻译tango.io.Stdout(r4774)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复