PDA

View Full Version : Tại sao không dùng được io.open mà là fileopen



banynavy
10-12-11, 08:21 AM
Tại sao không sử dụng được các thư viện io,os... trong Lua được mặc dù đã nâng cấp lualibdll lên bản 5.1.4 2008

DNTmaster
10-12-11, 09:34 AM
Dùng cho cái gì ??? Mới được JX hay Lua Compiler ???

banynavy
10-12-11, 10:06 AM
Jx................................................ ..........................
Ah cho hỏi thêm hàm kiểm tra sự tồn tại của 1 file trả về đúng sai viết sao ta?

function file_exists(name)
local f=openfile(name,"r")
if f~=nil then
closefile(f)
return true
else
return false
end
end
phải hum za

DNTmaster
10-12-11, 11:06 PM
local f=openfile(name,"r") -> f = nil khi không có file

Mà ai lại viết kiểu đó chứ ???
Bác dùng nó để ghi lại Log thì nên viết thế này


function SaveData(file, string)
local f = openfile( file, "w+" )
write(f,string)
closefile(f)
end

-> Chữ w+ là ghi lại 1 file mới -> Ghi đè lên file cũ
-> Thay bằng a+ là ghi thêm vào file đó
-> Biến truyền vào file -> Links chứa file Log (tính từ nơi chứa Server đi vào)
-> String -> dòng ghi vào file log

DNTmaster
10-12-11, 11:07 PM
Quên nói với bác là bản Lua của JX ko có kiểu dữ liệu BOOL -> True, false

banynavy
10-12-11, 11:13 PM
Quên nói với bác là bản Lua của JX ko có kiểu dữ liệu BOOL -> True, falseAx cái code ở trên mình kiểm tra sự tồn tại của tập tin đó nếu có trả về true ngược lại thì sai!Chứ code để ghi dữ liệu ra txt mình biết roài! Oh còn cái zu io,os trong Lua Jx sử dụng ko được ah

DNTmaster
10-12-11, 11:16 PM
Lua JX chỉ chạy với bản 4.0 thôi update lên liên quan tới Engine mình ko can thiệp được đâu

DNTmaster
10-12-11, 11:18 PM
local F_EXP = openfile(<ten file>, "r");
if F_EXP == nil then
return 0
end
return 1


viết vậy đó -> 0 là ko có -> 1 là có