Step By Step(Lua输入输出库)】的更多相关文章

Step By Step(Lua输入输出库) I/O库为文件操作提供了两种不同的模型,简单模型和完整模型.简单模型假设一个当前输入文件和一个当前输出文件,他的I/O操作均作用于这些文件.完整模型则使用显式的文件句柄,并将所有的操作定义为文件句柄上的方法.    1. 简单模型:    I/O库会将进程标准输入输出作为其缺省的输入文件和输出文件.我们可以通过io.input(filename)和io.output(filename)这两个函数来改变当前的输入输出文件.    1). io.writ…
1.简单模型 )1.io.write函数: 函数模型为io.write(...) )2.io.read函数: io.read(“*all”) 读取当前输入的整个文件 io.read(”*line“) 读取下一行 io.read(“*number”) 读取一个整数 io.read(num) 读取当前输入的不超过num个字符 特别的: io.lines():以迭代器形式访问文件中的每一行数据 for line in io.lines() do    io.write(string.format("%…
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) 提取…
Step By Step(Lua系统库) Lua为了保证高度的可移植性,因此,它的标准库仅仅提供了非常少的功能,特别是和OS相关的库.但是Lua还提供了一些扩展库,比如Posix库等.对于文件操作而言,该库仅提供了os.rename函数和os.remove函数.        1. 日期和时间:    在Lua中,函数time和date提供了所有的日期和时间功能.    如果不带任何参数调用time函数,它将以数字形式返回当前的日期和时间.如果以一个table作为参数,它将返回一个数字,表示该t…
Step By Step(Lua模块与包) 从Lua 5.1开始,我们可以使用require和module函数来获取和创建Lua中的模块.从使用者的角度来看,一个模块就是一个程序库,可以通过require来加载,之后便得到一个类型为table的全局变量.此时的table就像名字空间一样,可以访问其中的函数和常量,如: 1 require "mod"2 mod.foo()3 local m2 = require "mod2"4 local f = mod2.foo5…
Step By Step(Lua元表与元方法) Lua中提供的元表是用于帮助Lua数据变量完成某些非预定义功能的个性化行为,如两个table的相加.假设a和b都是table,通过元表可以定义如何计算表达式a+b.当Lua试图将两个table相加时,它会先检查两者之一是否有元表,然后检查该元表中是否存在__add字段,如果有,就调用该字段对应的值.这个值就是所谓的"元方法",这个函数用于计算table的和.    Lua中每个值都有一个元表.table和userdata可以有各自独立的元…
Step By Step(Lua编译执行与错误) 1. 编译:    Lua中提供了dofile函数,它是一种内置的操作,用于运行Lua代码块.但实际上dofile只是一个辅助函数,loadfile才是真正的核心函数.相比于dofile,loadfile只是从指定的文件中加载Lua代码块,然后编译这段代码块,如果有编译错误,就返回nil,同时给出错误信息,但是在编译成功后并不真正的执行这段代码块.因此,我们可以将dofile实现为: 1 function dofile(filename)2 lo…
Step By Step(Lua函数) 一.函数:    在Lua中函数的调用方式和C语言基本相同,如:print("Hello World")和a = add(x, y).唯一的差别是,如果函数只有一个参数,并且该参数的类型为字符串常量或table的构造器,那么圆括号可以省略,如print "Hello World"和f {x = 20, y = 20}.    Lua为面对对象式的调用也提供了一种特殊的语法--冒号操作符.表达式o.foo(o,x)的另一种写法是…
Step By Step(Lua基础知识) 一.基础知识:    1. 第一个程序和函数:    在目前这个学习阶段,运行Lua程序最好的方式就是通过Lua自带的解释器程序,如:    /> lua    > print("Hello World")    Hello World    这样我们就可以以交互性的方式输入lua代码,并立即得到执行结果了.对于代码块较少的测试程序来说,这种方式确实是非常方便的,然而对于相对复杂的程序而言,这种方式就不是很合适了.如果是这样,我们…
Step By Step(Lua开篇) 一.简介: Lua作为目前最为流行的.免费轻量级嵌入式脚本语言,在很多工业级的应用程序中被广泛应用,如Adobe's Photoshop,甚至是在一些著名的游戏程序中也被大量使用,如星际.不仅如此,由于Lua具备很多特殊的优点,如语法简单(基于过程).高效稳定(基于字节码).可以处理复杂的数据结构.动态类型.以及自动内存管理(基于垃圾收集)等,因此在很多嵌入式设备和智能移动设备中,为了提高程序的灵活性.扩展性和高可配置性,一般都会选择Lua作为它们的脚本引…