Read Lines from File in Kotlin
Introduction
Read Lines from File is a fundamental concept every Kotlin developer should understand. File I/O reads and writes persistent data on disk. Kotlin wraps Java file APIs with extension functions for cleaner syntax.
ReadLines returns list of lines from a text file. In this tutorial you will learn the syntax, walk through a complete example program, study the sample output, and review best practices so you can apply the concept confidently in your own projects.
Definition
- readLines returns list of lines from a text file.
- forEachLine reads file line by line without loading all lines at once.
- Useful for logs and large text files.
Syntax
file.readLines()Read Lines from File in Kotlin Example Program in Kotlin
import java.io.File
fun main(args: Array<String>) {
val file = File.createTempFile("lines", ".txt")
file.writeText("One\
Two\
Three")
file.readLines().forEach { println(it) }
file.deleteOnExit()
}Sample Output
One
Two
ThreeWhen to use
Use file I/O for reading config files, writing logs, or processing CSV/JSON stored on disk.
How it works
-
The program starts with a
mainfunction — the entry point that runs when you execute the file. -
val file = File.createTempFile("lines", ".txt")assigns or updates a value used later in the program. -
The
println(it)statement writes a line to the console — this produces part of the sample output below. -
ReadLines returns list of lines from a text file.
-
Run the program in IntelliJ IDEA, Android Studio, or with the Kotlin command-line compiler (
kotlinc/kotlin). Compare your console output with the sample output shown below.
Best Practices
Common Mistakes
Key Points
- readLines returns list of lines from a text file.
- forEachLine reads file line by line without loading all lines at once.
- Useful for logs and large text files.
- Test the example locally and verify the output matches the sample.
- Experiment by changing input values to see how behaviour changes.
Notes
- File examples assume a writable working directory; adjust paths for your environment.
- Semicolons at the end of statements are optional in Kotlin.