设为首页
收藏本站
开启辅助访问
切换到窄版
充值
登录
立即注册
只需一步,快速开始
懒人官网
论坛首页
BBS
视频直播网校
VIP会员
钱包
合鑫云真机
任务大厅
搜索
搜索
本版
帖子
用户
懒人精灵论坛
»
论坛首页
›
懒人精灵
›
教程专区
›
Lua语法小贴士(十二)loadstring和loadfile
返回列表
发新帖
Lua语法小贴士(十二)loadstring和loadfile
[复制链接]
2085
|
1
|
2022-5-15 11:57:03
|
显示全部楼层
|
阅读模式
Lua里面可以使用loadstring来加载一个字符串,字符串中包含了lua脚本。
示例:
local str = "print('TestLoadingString') return 1234"
local func = loadstring(str)
print(func())
虽然字符串里没有被function() end包围,但loadstring加载进来的却是一个函数。
这是一个没有参数的函数,如果你需要添加参数,可以这样:
local fmtStr = "local a='%d' print(a)"
local fmtFunc = loadstring(string.format(fmtStr, 9999))
fmtFunc()
或者还可以这样:
local fmtParamStr = "return function(s,x) print(s..x) end"
local fmtParamFunc = loadstring(fmtParamStr)()
fmtParamFunc("test parameters", "666")
如果你需要在配置表里自定义一些公式,loadstring可能比较好用。
Lua里面还可以使用loadfile,可以加载一个lua文件。
(个人感觉意义不大)
例如,我们在一个文件TestLoading.lua里添加:
print("TestFileLoading")
return true
那么就可以在另一个lua文件中调用它:
print(loadfile("TestLoading.lua")())
回复
使用道具
举报
pisces217
|
2022-5-21 11:28:29
|
显示全部楼层
功能好强大
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
admin
108
主题
131
帖子
1万
积分
管理员
积分
15616
加好友
发消息
回复楼主
返回列表
版本更新
问答专区
综合讨论
直播公开课专区
教程专区
VSCODE专区
插件专区
源码分享
懒人BUG&建议专区
论坛事务
广告位招商