2
你有一個模擬進度完成率的lua函數,寫入stdout
。如何清除Lua中的stdout行?
function progress(completed)
io.write(completed.."\r")
io.flush()
end
progress("1% completed"); progress("50% completed")
輸出會是
%完成了文本的
部分消失。在在類似的情況蟒蛇我可能會寫stdout
以下方式之前清除行:
sys.stdout.write(' ' * 50 + '\r')
sys.stdout.write(text + '\r')
sys.stdout.flush()
如何清除stdout
線LUA?
我會做以下,但有一個更好或更標準的方式?
function iop(str)
io.write(string.format("%050s\r", ' '))
io.write(str)
io.flush()
end
你給正在按預期在Lua 5.3.3第一個腳本。如果第二個字符串更短,問題就會開始。 – Green