南京新世界电玩 >> PSP >> PSP技术 >> 菜鸟也能为PSP编程 - Lua Player 编程初级指南
菜鸟也能为PSP编程 - Lua Player 编程初级指南
作者:不详  浏览:次  日期:06-25
广告位

  请注意,此命令前的 file 是我们之前打开文件并保存的变量名,你可以使用任何其他名字。file.read() 还可以使用下列任一个参数,只要用引号括起来放入括号里就可以。

引用:

*n - 读取一个数字并返回它。例:file.read("*n")
*a - 从当前位置读取整个文件。例:file.read("*a")
*l - (默认) - 读取下一行,在文件尾 (EOF) 处返回 nil。例:file.read("*l")
number - 返回一个指定字符个数的字符串,或在 EOF 时返回 nil。例:file.read(5)

 

  既然我们已经读取到所要的那一行,我们需要关闭打开的文件,像这样:

代码:

file:close()

 

  现在要打印我们的文件至屏幕我们只要这么做:

代码:

screen:print(10,10,ourline,white)

 

读取所有行

  要读取一个文件的所有行,你可以在一个 for 语句中使用上述技巧。请看下述代码:

代码:

y = 10

file = io.open("testRead.txt","r")

for line in file:lines() do
y = y + 10
screen:print(100,y,line,white)
end

file:close()

 

  这个代码设置了一个起始值 y 用于打印,这样它可以在屏幕不同的纵坐标打印每一行。照例,先打开文件。然后是 for 语句,这句代码是说文件的行数有多少下面的代码就执行几次。我们的 y 坐标则每次循环加上 10 以便打印命令可以打印下一行。

写入文件(覆盖)

  写入文件的方式大致相同。下面的代码将覆盖任何先前写入文件的内容:

代码:

file = io.open("testRead.txt","w")
file:write("hello")
file:close()

 

  注意,我们这次使用了 w 模式,而不是 r 模式,因为我们是要写入而不是读取。我们用 file:write() 写入括号里作为参数的、用引号括起来的文本。你也可以用变量替代。如果你使用变量就不要用引号,请看下例:

代码:

file = io.open("testRead.txt","w")
myText = "Hello"
file:write(myText)
file:close()

 

写入文件(附加)

  你可以使用附加模式,这样就可以在写入文件时将新内容附加在已有文本末尾,而不是删除原来的。做法与上面基本相同,除了模式换成“附加”之外。请看代码:

代码:

file = io.open("testRead.txt","a")
myText = "\nHello"
file:write(myText)
file:close()

 

  注意到另一个区别没?在 myText 变量里我们为字符串添加了 \n 。这个命令代表换行,这样写入的文本将从下一行开始。虽然在你的文件中可能显示为同一行只是中间隔了一个方块,但是技术上它是新的一行。在 C/C++ 语言中也是这么用的。

  将你所学的知识用在自己的小程序上吧。

  我们的下一讲将讨论音频的处理,也会使用我们此处所学的读写文件的命令做一个小程序。

10——应用音频

广告位2
 来源:来自网络 
 热门文章
②新世界新街口店地址:南京中山东路71号电..
招商、批发、邮购请与总部联系邮购地址:南..
产品代理列表:任天堂神游机系列产品江苏、..
新世界出台会员制度如何成为会员: 第一次 购..
南京新世界电玩,是一家经营达20年的老字号..
 最新文章
面对越来越多的客户关于新版PSP 3000掌机扫..
Alek谈PSP破解小组M33的近况 Dark-Alex官方..
由 CAPCOM 製作,预定明年春季推出的 PSP 战..
由 KOEI 製作,推出移植自 PS / PS2 同名作..
将《传说》系列诸多角色汇集到一起的梦幻游..
PSP | iDSL | PS3 | wii | XBOX360 | 下载中心 | 本站商城 |淘宝一店 | 淘宝二店 | 加盟 | 招聘 | 联系我们 | TOP
使用 1200*1024 以上分辨率 IE7.0 浏览新世界以达到最佳视觉效果