点击进入
这节课程围绕 Lua 5.3 的 IO 库展开,还涉及了一些后续学习安排,整体体系清晰且实用,具体如下:
一、IO 库核心内容
- 句柄创建:通过
io.open
函数创建文件句柄,第一个参数是文件名,第二个参数是操作模式(如读写等),且该函数有两个返回值,分别是句柄对象和错误信息。
- 文件操作模式:有多种模式可控制文本操作,比如
w
(写入,会清空文件)、r
(读取)、a
(追加)等,还有更新模式,能保留之前的数据,不过写入位置有特定限制。
- 文件指针操作:
seek
函数可设置或获取文件指针位置,就像控制文本中鼠标的位置,比如设置到文件开头、尾部或当前位置。
- 读写操作:通过句柄的
write
方法写入内容,写完后要用close
方法关闭文件句柄,避免资源占用。还可以往文件头部、尾部等不同位置写入,但要注意可能出现的字符占用问题。
- **迭代函数
io.lines
**:用于迭代文件内容,能一行行读取文件,还可以配合table.sort
等函数对读取的数据进行处理,不过要注意字符串和数字类型的转换,否则可能无法正常排序。
- 默认输入输出:
io.output
可设置默认输出文件,io.input
可设置默认输入文件,不过io.input
一般是只读模式。
- 缓存机制:有缓冲模式,
flush
函数可刷新缓冲区,在大批量读写时很有用,能提高效率,还可以计算操作耗时。
二、相关概念拓展
- 句柄与对象:创建的文件句柄是一种特殊对象,封装了写入、关闭等固定方法,和面向对象中的对象有一定区别,它是对系统资源的指向性引用。
- 显式与隐式:显式是指代码中清晰展示每一步操作,目的明确;隐式则是很多操作在背后默认进行,比如函数的参数传递、返回等,日常编程中隐式操作很常见。
三、后续学习安排
- 明天讲解
debug
相关内容,之后系统函数就全部讲完了。
- 下周开始讲解辅助相关知识,包括制作安卓 APP、注入劫持、接口调用等,做版本的学员可以不用参加,辅助相关学员建议参与。
这节课程内容和实际操作紧密相关,学好这些,你就能轻松驾驭 Lua 中文件的各种操作啦,而且后续的辅助知识学习也能为你打开新的技能大门,是不是很期待呢?