无涯教程-Tcl - I/O文件

95 阅读1分钟

Tcl在内置命令openreadputsgetsclose的函数处理文件。

Open 函数

Tcl使用open命令在Tcl中打开文件。打开文件的语法如下-

open fileName accessMode

在这里, filename 是字符串文字,您将使用它来命名文件,并且 accessMode 可以具有以下值之一-

Sr.No. Mode & Remark
1

r

只读模式,该文件必须存在。

2

w

只写模式,如果不存在,则创建一个新文件,否则现有文件将被覆盖。

3

a

追加模式,并且该文件必须存在,向现有文件内容中追加内容。

4

r+

读写模式,文件必须已经存在。

5

w+

读写模式,如果存在,它将首先将文件清空;否则创建创建文件。

6

a+

读写模式。如果文件不存在,它将创建文件,否则追加写入数据。

Close 函数

要关闭文件,请使用close命令。 close的语法如下-

close fileName 

程序执行完后需要调用close函数进行关闭文件。

Write 函数

Puts命令用于写入打开的文件。

puts $filename "text to write"

下面显示了一个写入文件的简单示例。

#!/usr/bin/tclsh

set fp [open "input.txt" w+] puts fp</span><spanclass="str">"test"</span><spanclass="pln">closefp </span><span class="str">"test"</span><span class="pln"> close fp

编译并执行上述代码后,它会在其下启动的目录中创建一个新文件 input.txt 。

Read 函数

以下是从文件读取的简单命令-

set file_data [read $fp]

读写的完整示例如下所示-

#!/usr/bin/tclsh

set fp [open "input.txt" w+] puts fp</span><spanclass="str">"test"</span><spanclass="pln">closefp </span><span class="str">"test"</span><span class="pln"> close fp set fp [open "input.txt" r] set file_data [read fp</span><spanclass="pun">]</span><spanclass="pln">putsfp</span><span class="pun">]</span><span class="pln"> puts file_data close $fp

编译并执行上述代码后,它将读取上一部分中创建的文件,并产生以下输出-

test

这是另一个读取文件直到文件末尾的示例-

#!/usr/bin/tclsh

set fp [open "input.txt" w+] puts fp</span><spanclass="str">"test\ntest"</span><spanclass="pln">closefp </span><span class="str">"test\ntest"</span><span class="pln"> close fp set fp [open "input.txt" r]

while { [gets fp data</span><span class="pun">]</span><span class="pln"> </span><span class="pun">&gt;=</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">}</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> puts data } close $fp

编译并执行上述代码后,它将读取上一部分中创建的文件,并产生以下输出-

test
test

参考链接

www.learnfk.com/tcl-tk/tcl-…