local function fs_example() -- local f , msg, code = lvgl.open_file(SCRIPT_PATH .. "/tmp.txt") -- for lua 5.4 local f, msg, code = lvgl.fs.open_file(SCRIPT_PATH .. "/tmp.txt", "rw") if not f then print("failed: ", msg, code) return end print("f: ", f) f:write("0123456789", 123, "\n", "the remaining text") f:seek("set", 0) -- go back local header, remaining = f:read(10, "*a") f:close() if not header then print("read failed or EOF") return end print("header len:", #header, ": ", header) print("remaining: ", remaining) lvgl.Label(nil, { x = 0, y = 0, text_font = lvgl.Font("montserrat", 20, "normal"), text = header .. remaining, align = lvgl.ALIGN.TOP_LEFT }) local list = lvgl.List(nil, { align = lvgl.ALIGN.TOP_RIGHT, pad_all = 10, text_font = lvgl.BUILTIN_FONT.MONTSERRAT_12 }) list:add_text("Directory list:") -- local dir , msg, code = lvgl.fs.open_dir(SCRIPT_PATH .. "/") local dir, msg, code = lvgl.fs.open_dir(SCRIPT_PATH .. "/") if not dir then print("open dir failed: ", msg, code) return end while true do local d = dir:read() if not d then break end local is_dir = string.byte(d, 1) == string.byte("/", 1) local str = (is_dir and "dir: " or "file: ") .. d print(str) list:add_text(str):set{ border_width = 1, } end dir:close() end fs_example()