成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Lua標準庫-輸入輸出處理(input and output facilities)

開發 前端
I/O庫提供兩種不同的方式進行文件處理

I/O庫提供兩種不同的方式進行文件處理

1、io表調用方式:使用io表,io.open將返回指定文件的描述,并且所有的操作將圍繞這個文件描述

io表同樣提供三種預定義的文件描述io.stdin,io.stdout,io.stderr

2、文件句柄直接調用方式,即使用file:XXX()函數方式進行操作,其中file為io.open()返回的文件句柄

多數I/O函數調用失敗時返回nil加錯誤信息,有些函數成功時返回nil

1、io.close ([file])

功能:相當于file:close(),關閉默認的輸出文件

2、io.flush ()

功能:相當于file:flush(),輸出所有緩沖中的內容到默認輸出文件

3、io.lines ([filename])

功能:打開指定的文件filename為讀模式并返回一個迭代函數,每次調用將獲得文件中的一行內容,當到文件尾時,將返回nil,并自動關閉文件

若不帶參數時io.lines() <=> io.input():lines(); 讀取默認輸入設備的內容,但結束時不關閉文件

如:for line in io.lines("main.lua") do

print(line)

end

4、io.open (filename [, mode])

功能:按指定的模式打開一個文件,成功則返回文件句柄,失敗則返回nil+錯誤信息

mode:

"r": 讀模式 (默認);

"w": 寫模式;

"a": 添加模式;

"r+": 更新模式,所有之前的數據將被保存

"w+": 更新模式,所有之前的數據將被清除

"a+": 添加更新模式,所有之前的數據將被保存,只允許在文件尾進行添加

"b": 某些系統支持二進制方式

5、io.output ([file])

功能:相當于io.input,但操作在默認輸出文件上

6、io.popen ([prog [, mode]])

功能:開始程序prog于額外的進程,并返回用于prog的文件句柄(并不支持所有的系統平臺)

7、io.read (...)

功能:相當于io.input():read

8、io.tmpfile ()

功能:返回一個臨時文件句柄,該文件以更新模式打開,程序結束時自動刪除

9、io.type (obj)

功能:檢測obj是否一個可用的文件句柄

返回:

"file":為一個打開的文件句柄

"closed file":為一個已關閉的文件句柄

nil:表示obj不是一個文件句柄

10、io.write (...)

功能:相當于io.output():write

11、file:close()

功能:關閉文件

注:當文件句柄被垃圾收集后,文件將自動關閉。句柄將變為一個不可預知的值

12、file:flush()

功能:向文件寫入緩沖中的所有數據

13、file:lines()

功能:返回一個迭代函數,每次調用將獲得文件中的一行內容,當到文件尾時,將返回nil,但不關閉文件

如:for line in file:lines() do body end

14、file:read(...)

功能:按指定的格式讀取一個文件,按每個格式函數將返回一個字串或數字,如果不能正確讀取將返回nil,若沒有指定格式將指默認按行方式進行讀取

格式:

"*n": 讀取一個數字

"*a": 從當前位置讀取整個文件,若為文件尾,則返回空字串

"*l": [默認]讀取下一行的內容,若為文件尾,則返回nil

number: 讀取指定字節數的字符,若為文件尾,則返回nil;如果number為0則返回空字串,若為文件尾,則返回nil;

15、file:seek([whence][,offset])

功能:設置和獲取當前文件位置,成功則返回最終的文件位置(按字節),失敗則返回nil加錯誤信息

參數

whence:

"set": 從文件頭開始

"cur": 從當前位置開始[默認]

"end": 從文件尾開始

offset:默認為0

不帶參數file:seek()則返回當前位置,file:seek("set")則定位到文件頭,file:seek("end")則定位到文件尾并返回文件大小

16、file:setvbuf(mode,[,size])

功能:設置輸出文件的緩沖模式

參數

mode:

"no": 沒有緩沖,即直接輸出

"full": 全緩沖,即當緩沖滿后才進行輸出操作(也可調用flush馬上輸出)

"line": 以行為單位,進行輸出(多用于終端設備)

最后兩種模式,size可以指定緩沖的大小(按字節),忽略size將自動調整為最佳的大小

17、file:write(...)

功能:按指定的參數格式輸出文件內容,參數必須為字符或數字,若要輸出其它值,則需通過tostring或string.format進行轉換

原文鏈接:http://tech.it168.com/j/2008-02-17/200802171019138.shtml

責任編輯:陳四芳 來源: 來自ITPUB論壇
相關推薦

2013-12-12 16:59:15

Lua表處理

2010-02-06 14:28:38

C++標準輸入輸出

2013-12-12 17:03:57

Lua腳本語言

2013-12-12 17:27:51

Lua協同

2011-11-28 09:25:36

Java輸入輸出

2021-05-07 20:01:23

IO輸入輸出

2013-12-12 17:08:24

Lua字符串

2010-03-16 14:20:57

Java多線程調試

2009-12-23 10:57:20

nohup命令

2009-12-17 11:36:55

Ruby輸入輸出

2014-09-04 11:39:43

Linux

2011-07-11 11:05:09

Windows控制臺

2013-12-03 17:28:56

Lua腳本語言

2020-09-04 11:02:47

Java技巧參數

2021-06-24 10:24:57

Linux輸入輸出設備Interface

2024-09-09 06:00:00

Python輸入編程

2021-12-01 11:40:14

Python 輸入輸出

2010-02-03 15:35:00

C++輸入輸出漢字

2009-01-18 11:14:06

軟設計算機系統知識I

2009-07-30 11:43:32

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费观看一级特黄欧美大片 | 伊人二区 | 午夜激情免费 | 狠狠操电影| 成人在线视频网站 | 99亚洲| 国产一区二区三区在线看 | 亚洲欧美日韩中文字幕一区二区三区 | 国产a视频 | 国产精品一区久久久 | 国产精品伦一区二区三级视频 | av中文字幕在线播放 | 午夜国产 | 成人免费在线观看 | 日本天堂视频 | 日一区二区 | 日日干日日操 | 日本久久精 | 久久久久国产精品一区二区 | 羞羞的视频免费在线观看 | 瑟瑟激情| 天天草天天爱 | 男女啪啪高潮无遮挡免费动态 | 日本不卡一区二区三区在线观看 | 97超碰成人 | 中文字幕一区二区三区四区 | 亚洲精品三级 | 高清欧美性猛交 | 美国十次成人欧美色导视频 | 久久久久久久久久久久久九 | 亚洲成人精品影院 | 国产视频二区在线观看 | 国产一区二区影院 | av一级久久 | 亚洲成人免费av | 亚洲成人99 | 久久精品国产一区二区电影 | 爱综合 | 国产成人精品一区二区三区视频 | 亚洲一区二区三区在线 | 麻豆视频国产在线观看 |