我如何确保 quirrel 中存在路径

How can i make sure a path exists in quirrel

我想在 quirrel (squirrel fork) 的自定义子文件夹中创建文件。 我有这个示例代码

local function saveToFile(subfolder_name, file_name, content) {
  local path = $"folder/{subfolder_name}/{file_name}"
  local file = io.file(path, "wt+")
  file.writestring(content)
  file.close()
}

但是如果我不创建所需的文件夹,它就无法打开文件。

遗憾的是squirrel标准库中没有这样的native方法 但是因为你可以从松鼠调用系统,你可以创建文件夹。 请参阅 https://quirrel.io/doc/stdlib/stdsystemlib.html#system(quirrel 是 squirrel 的分支,在安全性和性能方面具有相同的改进,但它与原始 squirrel 几乎相同,唯一的问题是您如何在自己的实现中使用标准本机库,AFAIK 通常它们具有本机方法在根 table

local {system} = require("system")//this is to add 'system'
method to local scope
system("mkdir myDirName")

您也可以添加自己的函数并绑定它squirrel\quirrel或者添加它“io”标准库并提交PR

Squirrel 首先是嵌入式语言,因此它产生副作用的方法应该由程序员添加