- Tcl 教程
- Tcl - 首頁
- Tcl - 概述
- Tcl - 環境設定
- Tcl - 特殊變數
- Tcl - 基本語法
- Tcl - 命令
- Tcl - 資料型別
- Tcl - 變數
- Tcl - 運算子
- Tcl - 決策
- Tcl - 迴圈
- Tcl - 陣列
- Tcl - 字串
- Tcl - 列表
- Tcl - 字典
- Tcl - 過程
- Tcl - 包
- Tcl - 名稱空間
- Tcl - 檔案 I/O
- Tcl - 錯誤處理
- Tcl - 內建函式
- Tcl - 正則表示式
- Tk 教程
- Tk - 概述
- Tk - 環境
- Tk - 特殊變數
- Tk - 小部件概述
- Tk - 基本小部件
- Tk - 佈局小部件
- Tk - 選擇小部件
- Tk - 畫布小部件
- Tk - Mega 小部件
- Tk - 字型
- Tk - 影像
- Tk - 事件
- Tk - 視窗管理器
- Tk - 幾何管理器
- Tcl/Tk 有用資源
- Tcl/Tk - 快速指南
- Tcl/Tk - 有用資源
- Tcl/Tk - 討論
Tcl - 檔案 I/O
Tcl 透過內建命令 open、read、puts、gets 和 close 支援檔案處理。
檔案表示位元組序列,無論它是文字檔案還是二進位制檔案。
開啟檔案
Tcl 使用 open 命令在 Tcl 中開啟檔案。開啟檔案的語法如下:
open fileName accessMode
這裡,filename 是字串字面量,您將使用它來命名您的檔案,而 accessMode 可以具有以下值之一:
| 序號 | 模式 & 描述 |
|---|---|
| 1 | r 以讀取目的開啟一個現有的文字檔案,並且檔案必須存在。這是在未指定 accessMode 時使用的預設模式。 |
| 2 | w 開啟一個文字檔案以進行寫入,如果它不存在,則建立一個新檔案,否則截斷現有檔案。 |
| 3 | a 以追加模式開啟一個文字檔案,並且檔案必須存在。在這裡,您的程式將開始將內容追加到現有檔案內容中。 |
| 4 | r+ 開啟一個文字檔案以進行讀寫。檔案必須已存在。 |
| 5 | w+ 開啟一個文字檔案以進行讀寫。如果檔案存在,則首先將其長度截斷為零,否則如果檔案不存在,則建立該檔案。 |
| 6 | a+ 開啟一個文字檔案以進行讀寫。如果它不存在,則建立該檔案。讀取將從開頭開始,但寫入只能追加。 |
關閉檔案
要關閉檔案,請使用 close 命令。close 的語法如下:
close fileName
程式開啟的任何檔案都必須在程式完成使用該檔案時關閉。在大多數情況下,無需顯式關閉檔案;當檔案物件自動終止時,它們會自動關閉。
寫入檔案
Puts 命令用於寫入開啟的檔案。
puts $filename "text to write"
下面顯示了一個寫入檔案的簡單示例。
#!/usr/bin/tclsh set fp [open "input.txt" w+] puts $fp "test" close $fp
當以上程式碼編譯並執行時,它會在其啟動所在的目錄(在程式的工作目錄中)建立一個名為input.txt的新檔案。
讀取檔案
以下是讀取檔案的簡單命令:
set file_data [read $fp]
下面顯示了一個完整的讀寫示例:
#!/usr/bin/tclsh set fp [open "input.txt" w+] puts $fp "test" close $fp set fp [open "input.txt" r] set file_data [read $fp] puts $file_data close $fp
當以上程式碼編譯並執行時,它讀取上一節中建立的檔案併產生以下結果:
test
以下是另一個逐行讀取檔案直到檔案結尾的示例:
#!/usr/bin/tclsh
set fp [open "input.txt" w+]
puts $fp "test\ntest"
close $fp
set fp [open "input.txt" r]
while { [gets $fp data] >= 0 } {
puts $data
}
close $fp
當以上程式碼編譯並執行時,它讀取上一節中建立的檔案併產生以下結果:
test test
廣告