Lua在文件读取之前不打印

时间:2012-10-26 15:24:36

标签: printing io lua

在运行打开和读取的文件之前,我遇到了让Lua打印的问题。这将打印字符串“Reading File ...”和“File Read!”但只有在它完成了getFileString()函数之后。我希望它在运行之前打印“阅读文件...”。我把它缩小到文件:read(“* a”)这会弄乱我(更大)脚本中的所有打印件。

function getFileString(path)

    local file, err = io.open(path, "r")
    local all = file:read("*a")
    file:close()

    return all

end

function main()

    local directory = "C:\\Documents and Settings\\All Users\\Documents\\"

    print("Reading File...")
    local file_all = getFileString(directory.."myFile.txt")
    print("File Read!\n")

end

main()

我是否功能化似乎也没关系。我应该提一下,这主要是因为我正在阅读150MB左右的文件。

1 个答案:

答案 0 :(得分:6)

我认为输出只是缓冲。尝试在打印前添加io.stdout:setvbuf('no'),这样可以关闭输出缓冲。