打印存储在LUA中变量中的列表

问题描述 投票:-1回答:1

我的脚本使用lfs来读取目录中的文件。然后,它将值存储在名为file的变量中。问题在于该值实际上是一个列表。这是一个样本值。

.
..
a.txt
b.txt
c.txt
d.txt

我可以按原样打印此变量,但是我需要将此变量集成到对话框中。当我将此变量集成到对话框中时,它将在新对话框中打印每一行。这是我的代码:

require 'lfs'

function main()
    for file in lfs.dir[[C:\Users\QXJtaW5pdXM\Desktop\Test\test_3.4.5.6]] do
    print(file)
    --This works perfectly fine.

    Dialog("Title", "Files:\n" .. file)
    --This prints each line in a new dialog box.
    end
end

return main

我需要在一个对话框中打印所有文件。如果可能,我希望避免打印...

作为图片参考,这是我得到的:https://imgur.com/tmfQlan

这是我需要的:https://imgur.com/mxYBO9t

有人能指出我正确的方向吗?非常非常感谢您!

lua
1个回答
0
投票

您的循环主体对每个文件执行一次,因此,如果在循环内部创建对话框,您会有什么期望?创建文件列表后,在外部创建它。

require 'lfs'

function main()
    local files = ""
    for file in lfs.dir[[C:\Users\QXJtaW5pdXM\Desktop\Test\test_3.4.5.6]] do
      files = files .. file .. "\n"
    end
    Dialog("Title", "Files:\n" .. files)
end

也许还有另一个功能可以立即为您提供文件名列表。

© www.soinside.com 2019 - 2024. All rights reserved.