Kotlin:
קריאת קובץ טקסט

How to:

קריאת תכנים מלאים עם readText()

import java.nio.file.Paths

fun main() {
    val path = Paths.get("example.txt")
    val content = path.toFile().readText(Charsets.UTF_8)
    println(content)
}

תוצאה:

התוכן של הקובץ example.txt נקרא

קריאת שורה אחר שורה עם forEachLine()

import java.nio.file.Files
import java.nio.file.Paths

fun main() {
    Files.newBufferedReader(Paths.get("example.txt")).use { reader ->
        reader.forEachLine { line ->
            println(line)
        }
    }
}

תוצאה:

שורה ראשונה
שורה שנייה
שורה שלישית

Deep Dive

קריאת קבצים היא חלק מהיסוד לכל שפת תכנות. בעבר, הגישה לקבצים הייתה כרוכה בפתיחה וסגירה ידנית של המשאבים. כיום בקוטלין, מתקיימת דגש על “safe closing” באמצעות use{}. ישנן גם אלטרנטיבות כמו ספריית Apache Commons IO בג’אווה אשר מאפשרות גישה נוחה ומרוכזת יותר לקריאת קבצים. בתוך קוטלין, אפשר להשתמש בstream כדי לקרוא קבצים גדולים באופן יעיל יותר, מבלי לטעון אותם כולם לזיכרון במכה אחת.

See Also