回覆列表
-
1 # 使用者6455711224833
-
2 # 使用者3132823076892
1、假設有一個很多行文字的檔案,想從中讀取一行,並列印到螢幕上。可以使用 io.open() 命令開啟檔案並讀取。
命令的語法是 io.open(filename, mode)。此處將使用 r 作為 mode 的值,意指讀取(read)模式。作為參考,下面是所有可用模式的列表:
引用:
r - 讀取模式w - 寫入模式(覆蓋現有內容)
a - 附加模式(附加在現有內容之後)
b - 二進位制模式
r+ - 讀取更新模式(現有資料保留)
w+ - 寫入更新模式(現有資料擦除)
a+ - 附加更新模式(現有資料保留,只在檔案末尾附加)
第一件要做的事情就是開啟檔案並存為一個變數。看下面。
程式碼:
file = io.open("testRead.txt", "r")
*n - 讀取一個數字並返回它。例:file.read("*n")
*a - 從當前位置讀取整個檔案。例:file.read("*a")
*l - (預設) - 讀取下一行,在檔案尾 (EOF) 處返回 nil。例:file.read("*l")
number - 返回一個指定字元個數的字串,或在 EOF 時返回 nil。
2、例程:
out=io.open("text.dat","wb")
for i=0,255 do
local x=string.char(i)
out:write(x)
end
out:close()
有。鄙公司就採用Lua作為客戶端研發的“主要語言”。說是主要語言有這樣兩個標準:1、不論級別,只要參與客戶端研發,都大量使用Lua進行開發。2、我們還有一條常用的標準,就是應該用lua做的,都用lua做。不應該用lua做的包括:部分平臺作業系統API相關、效能瓶頸、lua不能有效節省編碼效率的場合(如涉及大量演算法、二進位制資料處理等情形)、已有現成C++第三方庫的場合。這四條標準都不符合的功能,我們都採用Lua開發,包括但不限於:業務邏輯開發、事件黏合、字串解析、功能封裝、程式框架結構。說白了,在客戶端研發這一塊,我們只在“需要的時候”才不用Lua順帶一提,我們招Lua程式設計師。公司招聘資訊上寫的Title包括“遊戲指令碼程式設計師”和“遊戲程式設計師”,實際工作都以Lua為主。甚至包括我們的“遊戲引擎工程師”在內,雖然實際的引擎研發是以C++為主,但考慮上他們寫的Unittest、Samples,以及參與專案所編寫的程式碼,Lua的比重要遠遠超過50%。