Difference between revisions of "Io.lines"
From GiderosMobile
m (Text replacement - "</source>" to "</syntaxhighlight>") |
|||
(13 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
'''Available since:''' Gideros 2011.6<br/> | '''Available since:''' Gideros 2011.6<br/> | ||
+ | '''Class:''' [[io]]<br/> | ||
+ | |||
=== Description === | === Description === | ||
− | Opens the given file name in read mode and returns an iterator function | + | Opens the given file name in read mode and returns an iterator function. Each time the iterator function is called, it returns a new line from the file. |
− | + | The call '''io.lines()''' (with no file name) is equivalent to '''io.input():lines()''' that is, it iterates over the lines of the default input file. In this case it does not close the file when the loop ends. | |
+ | <syntaxhighlight lang="lua"> | ||
+ | (function) = io.lines(filename) | ||
+ | </syntaxhighlight> | ||
− | + | When the iterator function detects the end of file, it returns nil (to finish the loop) and automatically closes the file. | |
+ | === Parameters === | ||
+ | '''filename''': (string) filename to open '''optional'''<br/> | ||
− | + | === Return values === | |
− | |||
− | |||
− | |||
− | |||
'''Returns''' (function) iterator function<br/> | '''Returns''' (function) iterator function<br/> | ||
+ | |||
+ | === Example === | ||
+ | '''Iterates over all lines of a file''' | ||
+ | <syntaxhighlight lang="lua"> | ||
+ | for line in io.lines(filename) do | ||
+ | -- body | ||
+ | end | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | {{Io}} |
Latest revision as of 14:30, 13 July 2023
Available since: Gideros 2011.6
Class: io
Description
Opens the given file name in read mode and returns an iterator function. Each time the iterator function is called, it returns a new line from the file.
The call io.lines() (with no file name) is equivalent to io.input():lines() that is, it iterates over the lines of the default input file. In this case it does not close the file when the loop ends.
(function) = io.lines(filename)
When the iterator function detects the end of file, it returns nil (to finish the loop) and automatically closes the file.
Parameters
filename: (string) filename to open optional
Return values
Returns (function) iterator function
Example
Iterates over all lines of a file
for line in io.lines(filename) do
-- body
end