我刚开始保存了一个ver.lua的文件,是可以正常保存的,是使用local file = io.open(path, w+)
当我读取这个ver.lua的时候,我用的是2dx里的getFileData发现获取lua的内容是个nil值,我安卓存放的目录是data/data/com.xxx.xxx/ver.lua
大神,出来帮个忙把!!!
我刚开始保存了一个ver.lua的文件,是可以正常保存的,是使用local file = io.open(path, w+)
当我读取这个ver.lua的时候,我用的是2dx里的getFileData发现获取lua的内容是个nil值,我安卓存放的目录是data/data/com.xxx.xxx/ver.lua
大神,出来帮个忙把!!!
是不是路径不对?
已经用idFileExist判断存在了,才读取的,就是读取不了里面的内容
把读取部分相关代码贴一下
print("游戏入口读写测试")
local f = CCFileUtils:sharedFileUtils()
local uroot = f:getWritablePath() --获取可写的目录
local tar = uroot .. "as.txt"
print("tar", tar)
local file = io.open(tar, "w+b")
if file then
if file:write("读写测试+++++++++") == nil then
print("文件错误")
--return false
else
print("文件成功")
end
io.close(file)
--return true
else
print("文件不存在")
--return false
end
if f:isFileExist(tar) then
print("A:getFileData(tar)", f:getFileData(tar))
end
有写入到data/data/as.txt,不过最后print的东西是个nil,在安卓上测试的,quick2.2.5版本
暂时没看出有什么问题。在其他平台能正常读写吗?Android的读写权限设置了没有?用adb查一下看文件创建成功了没有?
文件创建成功的,里面也写进去内容了,安卓设置了 权限了啊
ios,win32都没问题
你这个是写权限,而且是SD卡的
已解决,发出来,不知道大家会不会这样,这样就行了
–本地目录
function updater.doFile(path)
return f:getFileData(path)
end
–缓存读文件
function updater.readFile(path)
local file = io.open(path, “rb”)
if file then
local content = file:read("*all")
io.close(file)
return content
end
return nil
end
那其实应该是你用getFileData时没有带“rb"参数的原因吧
我查看了CCFileUntils.tolua其中getFileData是只传了文件路径的就一个参数
这个收了。之前一直出现这个情况不懂如何解决。唉。
你好,请问能发这份文件来参考下嘛!!