zoukankan      html  css  js  c++  java
  • 2.8-Air302(NB-IOT)-基础外设-文件数据存储和代码写入并执行lua文件

    <p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/Learn-NB-IOT-Air302-ForLua" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

    说明

    这一节测试一下文件数据的存储

    然后给大家一个扩展应用: 程序中写入lua文件,并执行lua文件

    测试基本的数据存储

    --[[基本的数据存储]]
    local f = io.open("test_file", "wb") --写模式打开文件,如果没有文件则自动创建
    if  f  then
        local str = "11233344";
        f:write( str )
        f:close()
    end
    
    local f = io.open("test_file", "rb")--读模式打开文件
    if f then
        local data = f:read("*a") --读取所有内容
        log.info("read test_file", "data", data) --打印读取的内容
        f:close()
    end

    程序中写入lua文件,并执行lua文件

    lua执行是把lua文件(字符串数据)放到一个数组里面,然后调用LUA解析,

    然后和底层C语言等配合执行.

    所以实际上LUA就是在执行一个字符串.

    测试的程序代码

    --[[测试把lua文件写到里面,然后执行]]
    local f = io.open("load_file.lua", "wb") --写模式打开文件,如果没有文件则自动创建
    if  f  then
        --写入LUA执行文件
        local str = "load_file={} " .. " _G.sys = require ("sys")" .. " load_file.test = "11223344"" ..  " return  load_file ";
        f:write( str )
        f:close()
    end
    
    
    local flag =0;
    local f = io.open("load_file.lua", "rb")
    if f then
        local data = f:read("*a")
        log.info("fs", "data", data)
        f:close()
    
        flag = 1;
    end
    
    if  flag==1 then --存在 load_file.lua 文件
        local load_file = require "load_file"  --请求load_file.lua文件
        
        log.info("run load_file", load_file.test) --加载执行load_file.lua 文件里面的程序
    end

    提示:创建的lua文件名字为  load_file.lua

    lua文件程序代码为:

    "load_file={} " .. " _G.sys = require ("sys")" .. " load_file.test = "11223344"" ..  " return  load_file "

    如果不知道是什么意思,是否还记得这一节

    1.3-Air302(NB-IOT)-新建lua文件和lua文件的变量,函数调用

    测试

    结语

    扩展的写入并运行lua程序我只是提示一下.

    应用方面呢是远程升级的时候可以直接升级进去lua文件,不需要把lua文件编译成bin以后再升级.

  • 相关阅读:
    Spring_3.1
    handler发消息的形式
    css元素排列
    利用Socket远程发送文件
    jtree添加节点
    url传参中文乱码
    struts action和jsp之间的传值
    Struts 404 The requested resource is not available
    tomcat server需要重启的时刻
    c++获取系统时间(引用别人的博文)
  • 原文地址:https://www.cnblogs.com/yangfengwu/p/14033766.html
Copyright © 2011-2022 走看看