Object 內建對象

對象TTYOutputStream

tty寫流對象, 用於處理tty輸出

沒有途徑可以單獨建立該類別, 全域只有process.stdout實例

1 2
// clear line process.stdout.clearLine(1)

繼承關係

成員屬性

isTTY

Boolean, 恆為true

1
readonly Boolean TTYOutputStream.isTTY;

columns

Integer, 傳回此TTYOutputStream 對應的終端機的列數

1
readonly Integer TTYOutputStream.columns;

rows

Integer, 傳回此TTYOutputStream 對應的終端機的行數

1
readonly Integer TTYOutputStream.rows;

fd

Integer, 查詢Stream對應的文件描述符值, 由子類實現

1
readonly Integer TTYOutputStream.fd;

成員函數

clearLine

根據dir 指示的方向clear line

1
TTYOutputStream.clearLine(Integer dir = 0);

呼叫參數:

  • dir: Integer, 清理方向

dir 的方向:

  • -1: 從遊標起往行起始清理
  • 0: 清理整行
  • 1: 從遊標起往行結尾清理

clearScreenDown

清除從遊標處起到螢幕結尾的字符

1
TTYOutputStream.clearScreenDown();

cursorTo

將遊標移到指定位置

1 2
TTYOutputStream.cursorTo(Integer x, Integer y = -1) async;

呼叫參數:

  • x: Integer, 指定的列數
  • y: Integer, 指定的行數,預設為-1,表示不改變行數

moveCursor

將遊標移動指定的偏移量

1 2
TTYOutputStream.moveCursor(Integer dx, Integer dy) async;

呼叫參數:

  • dx: Integer, 指定的列偏移量
  • dy: Integer, 指定的行偏移量

getWindowSize

傳回此TTYOutputStream 對應的終端機的尺寸

1
NArray TTYOutputStream.getWindowSize();

回傳結果:

  • NArray, 傳回陣列[numColumns, numRows],其中numColumns 和numRows 表示對應終端中的列數和行數

read

從流內讀取指定大小的數據

1
Buffer TTYOutputStream.read(Integer bytes = -1) async;

呼叫參數:

  • bytes: Integer, 指定要讀取的資料量,預設為讀取隨機大小的資料區塊,讀取的資料尺寸取決於設備

回傳結果:

  • Buffer, 傳回從流內讀取的數據,若無數據可讀,或連線中斷,則傳回null

write

將給定的資料寫入流

1
TTYOutputStream.write(Buffer data) async;

呼叫參數:

  • data:Buffer, 給定要寫入的數據

flush

將檔案緩衝區內容寫入實體設備

1
TTYOutputStream.flush() async;

close

關閉目前流對象

1
TTYOutputStream.close() async;

copyTo

複製流資料到目標流中

1 2
Long TTYOutputStream.copyTo(Stream stm, Long bytes = -1) async;

呼叫參數:

  • stm:Stream, 目標流對象
  • bytes: Long, 複製的位元組數

回傳結果:

  • Long, 傳回複製的位元組數

toString

傳回物件的字串表示,一般回傳"[Native Object]",物件可以根據自己的特性重新實現

1
String TTYOutputStream.toString();

回傳結果:

  • String, 傳回物件的字串表示

toJSON

傳回物件的JSON 格式表示,一般傳回物件定義的可讀屬性集合

1
Value TTYOutputStream.toJSON(String key = "");

呼叫參數:

  • key: String, 未使用

回傳結果:

  • Value, 傳回包含可JSON 序列化的值