read(3tcl) Tcl Built-In Commands read(3tcl)

read - 從一個通道讀

總覽 SYNOPSIS

read ?-nonewline? channelId

read channelId numChars

描述 DESCRIPTION

在第一種形式下,read 命令從 channelId 讀出直到檔案結束的所有資料。如果指定了 -nonewline 開關,那麼檔案的最後一個字元要是換行的話則丟棄它。 在第二種情況下,額外的引數指定要讀多少個字元。 實際上就讀取並返回這麼多字元,除非在檔案中剩下的字元少於 numChars ;在這種情況下返回所有剩餘的字元。如果通道被配置成使用多位元組編碼,則讀的字元數可能與讀的位元組數不相同。

如果 channelId 在非阻塞模式下,這個命令讀的字元可能不象要求的那樣多: 一旦所有可獲得的輸入已經被讀取了,這個命令將返回這些可獲得的資料,而不是為得到更多資料而阻塞。如果通道被配置成使用多位元組編碼,則實際上可能有一些位元組因為不能形成一個完整的字元而保留在內部緩衝區中。一直等到可獲得一個完整的字元或到達檔案結束,此前不返回這些位元組。 如果命令在到達檔案結束之前返回則忽略 -nonewline 開關。

Read 依照給通道的 -translation 選項把輸入中的行結束轉換成換行字元。參見 fconfigure 手冊條目來得到關於 fconfigure 如何改變輸入的一個討論。

參見 SEE ALSO

file(n), eof(n), fblocked(n), fconfigure(n)

關鍵字 KEYWORDS

blocking, channel, end of line, end of file, nonblocking, read, translation, encoding

寒蟬退士

2001/10/18

《中國 Linux 論壇 man 手冊頁翻譯計劃》:

http://cmpp.linuxforum.net

本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh

8.1 Tcl