Lua文件:read的意外行为

我是Lua的完全新手,我遇到了一个不理解的问题。

所以我想做的是打开一个文件,读取数据并将其保存到一个不同的文件中并使用不同的名称。

以下是代码

local infile = io.open(folder..'/'..f, "r")
local instr = infile:read("*all")
infile:close()

local outfile = io.open(folder..'/'..newName, "w")
outfile:write(instr)
outfile:close()

我得到的结果是一个大小为288Kb的源文件和一个大小为2Kb的目标文件

所以,作为Lua的新手,对于问题在infile:read中这个事实是一个完全的猜测,但是我认为,它要么是infile:read,要么是outfile:write

UPD:内容是绝对随意的,这意味着特殊符号会出现。

提前致谢,

问候!

点赞
用户5528432
用户5528432

我通过在io.open调用中添加标志b来以二进制模式打开输入和输出文件,让它起作用,所以我现在拥有的代码是:

        local infile = io.open(folder..'/'..f, "rb")
        local instr = infile:read("*all")
        Log(instr)
        infile:close()

        local outfile = io.open(folder..'/'..newName, "wb")
        outfile:write(instr)
        outfile:close()
2017-07-27 09:54:20