Lua输入输出库

1、简单模型

)1、io.write函数:

函数模型为io.write(...)

)2、io.read函数:

io.read(*all) 读取当前输入的整个文件

io.read(*line) 读取下一行

io.read(*number) 读取一个整数

io.read(num) 读取当前输入的不超过number个字符

特别的:

io.lines():以迭代器形式访问文件中的每一行数据

for line in in.lines() do
    io.write(string.format("%d\n",line))
end

2、完整I/O模型

Lua中完整I/O模型的使用方式非常类似于C运行时库的文件操作函数,它们都是基于文件句柄的。
    1). 通过io.open函数打开指定的文件,并且在参数中给出对该文件的打开模式,其中"r"表示读取,"w"表示覆盖写入,即先删除文件原有的内容,"a"表示追加式写入,"b"表示以二进制的方式打开文件。在成功打开文件后,该函数将返回表示该文件的句柄,后面所有基于该文件的操作,都需要将该句柄作为参数传入。如果打开失败,返回nil。其中错误信息由该函数的第二个参数返回,如:
    assert(io.open(filename,mode))  --如果打开失败,assert将打印第二个参数给出的错误信息。
    
    2). 文件读写函数read/write。这里需要用到冒号语法,如:

1 local f = assert(io.open(filename,"r"))2 local t = f:read("*all")  --对于read而言,其参数完全等同于简单模型下read的参数。3 f:close()
时间: 2024-07-31 05:25:54

Lua输入输出库的相关文章

Lua字符串库

Lua字符串库小集 1. 基础字符串函数:    字符串库中有一些函数非常简单,如:    1). string.len(s) 返回字符串s的长度:    2). string.rep(s,n) 返回字符串s重复n次的结果:    3). string.lower(s) 返回s的副本,其中所有的大写都被转换为了小写形式,其他字符不变:    4). string.upper(s) 和lower相反,将小写转换为大写:    5). string.sub(s,i,j) 提取字符串s的第i个到第j个

LUA string库

Lua解释器对字符串的支持很有限.一个程序可以创建字符串并连接字符串,但不能截取子串,检查字符串的大小,检测字符串的内容.在Lua中操纵字符串的功能基本来自于string库. 一.String库的常用函数: --返回字符串s的长度 local s = "HelloWorld" print(string.len(s)) -->10 --重复n次字符串s的串 print(string.rep(s,2)) -->HelloWorldHelloWorld --大写字母转换成小写 p

Lua字符串库(整理)

Lua字符串库小集 1. 基础字符串函数:    字符串库中有一些函数非常简单,如:    1). string.len(s) 返回字符串s的长度:    2). string.rep(s,n) 返回字符串s重复n次的结果:    3). string.lower(s) 返回s的副本,其中所有的大写都被转换为了小写形式,其他字符不变:    4). string.upper(s) 和lower相反,将小写转换为大写:    5). string.sub(s,i,j) 提取字符串s的第i个到第j个

cocos2d-x 3.3 导入lua扩展库

cocos2d-x 导入lua扩展库有几个点需要注意: 1.cocos2d-x 中的lua版本为5.1.4,所导入的lua库需要对应相应的版本库. 2.在vs 2012 中编译cocos2d-x ,添加的C文件需要注明用C编译,如一般.h文件需要这样写 #ifndef __LUA_LPEG_H_ #define __LUA_LPEG_H_ #if __cplusplus extern "C" { #endif #include "lua.h" #include &q

转 Lua标准库: table函数, 数学函数, 字符串函数/格式化/配对, WoW新增函数, 函数别名

这里只介绍和插件编写比较有关的几个函数. 详细的Lua手册请参照Lua Reference Manual 5.1. assert(value) - 检查一个值是否为非nil, 若不是则(如果在wow.exe打开调试命令)显示对话框以及输出错误调试信息 collectgarbage() - 垃圾收集器. (新增于1.10.1) date(format, time) - 返回当前用户机器上的时间. error("error message",level) - 发生错误时,输出一条定义的错误

LUA IO库

I/O库为文件操作提供两种模式.简单模式(simple model)拥有一个当前输入文件和一个当前输出文件,并且提供针对这些文件相关的操作.完全模式(complete model)使用外部的文件句柄来实现. 简单模式 I/O库将当前输入文件作为标准输入(stdin),将当前输出文件作为标准输出(stdout).这样当我们执行io.read,就是在标准输入中读取一行.写操作较读操作简单,我们先从写操作入手. 下面这个例子里函数io.write获取任意数目的字符串参数,接着将它们写到当前的输出文件.

Lua Rings库介绍

Rings需求 如果有一段lua脚本代码, 本来来源不可靠, 可能有安全性问题, 或者不像让这份代码污染了正在执行的lua环境, 则需要lua rings工具出厂了. 其在主lua环境中,即在宿主脚本中, 调用rings库创建一个子的lua环境, 将不可靠的lua代码在子lua环境中运行, 运行完毕环境销毁, 一点都不影响宿主环境. Rings is a library which provides a way to create new Lua states from within Lua.

Step By Step(Lua字符串库) (转)

1. 基础字符串函数:    字符串库中有一些函数非常简单,如:    1). string.len(s) 返回字符串s的长度:    2). string.rep(s,n) 返回字符串s重复n次的结果:    3). string.lower(s) 返回s的副本,其中所有的大写都被转换为了小写形式,其他字符不变:    4). string.upper(s) 和lower相反,将小写转换为大写:    5). string.sub(s,i,j) 提取字符串s的第i个到第j个字符.Lua中,第一

LUA string库详解

1. string库中所有的字符索引从前往后是1,2,...;从后往前是-1,-2,... 2. string库中所有的function都不会直接操作字符串,而是返回一个结果 string.byte(string [,pos]):返回第pos个字符的整数表示形式.如a为97. string.char(i1,i2...):i1,i2为整型,将i1,i2..等转化为对应的字符然后连接成字符串,并返回.如i1=97则返回a. string.dump(functoin):返回一个参数函数的2进制代码.(