lua文件中的" * all *格式是什么:read()表示什么?

时间:2017-11-14 03:33:33

标签: lua

我维护了一些用LUA编写的旧代码,有一些我无法理解的代码片段,

    local f = io.open("someFile.lua", "r");
    local szFileContent = "return {};";
    if f then
        szFileContent = f:read("*all");
        f:close();
    end

read函数中使用的格式很奇怪,我在lua51手册https://www.lua.org/manual/5.1/manual.html#pdf-file:read中看到格式* a和* l, 但不是 * all 格式

1 个答案:

答案 0 :(得分:2)

来自liolib.c的函数read中的

仅检查前两个(' *'' a')字符,忽略字符串的其余部分:

struct demo
{
  string str;
  int i;
};

std::array<demo, 5> arr;  //for fixed size array of 5 elements
std::vector<demo> vec;    //for dynamic size arrays