我正在尝试确保用于g代码的后处理器始终正确写入文件的第一行。当发布错误出现时,写入的第一行代码包含缓冲区中最后的内容。当第一行应仅是%时,例如G01X3.45Y5.63%。
我正在寻找一种打开指定文件的方法,请检查第一行是否仅是“%”,如果不是,则将其替换为“%”。
我对lua非常陌生。我找到了替换第一行代码的方法和替换特定字符串的方法,但是没有办法检查是否需要替换字符串。只是为了使代码尽可能高效而已。
我在另一个论坛上发现了此问题,并希望找到一种方法来对其进行调整,以检查是否需要替换第一行。
--First lets read the file and put the contents in a table name tContents
local file = io.open("example.txt", "r")
sContents = file:read() -- capture file in a string
file:close()
tContents = textutils.unserialize(sContents) -- convert string to table
--Print a specific line
print (tContents[3])
--Modify a specific line
table.remove(tContents, 3) -- will remove line 3 so we can insert the new line 3
table.inserct(tContents, 3, "New Information") -- inserts the string "New Infomation" on line 3 in the table.
--Convert table to string and save the file
sContents = textutils.serialize(tContents)
local file = io.open("example.txt", "w")
file:write(sContents)
file:close()
我确定我可以根据需要进行修改,只是不知道如何执行必要的if语句。