[kotlin] 파일에서 특정 행만 선택하는 방법

가장 일반적인 방식은 BufferedReader를 사용하여 파일을 한 줄 씩 읽고 원하는 행을 찾는 것입니다. 다음은 Kotlin에서 파일에서 특정 행을 선택하는 예제입니다.

import java.io.File

fun main() {
    val filename = "example.txt" // 파일 경로 및 파일명

    val targetRow = 3 // 선택하고자 하는 행 번호
    
    val file = File(filename)
    
    // 파일이 존재하는지 확인
    if (file.exists()) {
        val rows = file.readLines()
        
        // 선택한 행 인덱스를 0부터 시작하므로 1을 빼줍니다.
        val selectedRow = rows.getOrElse(targetRow - 1) { "" }
        
        if (selectedRow.isNotEmpty()) {
            println("Selected row: $selectedRow")
        } else {
            println("Selected row not found")
        }
    } else {
        println("File not found")
    }
}

위의 예제에서는 example.txt라는 파일에서 3번째 행을 선택하고 출력합니다. 파일이 존재하는지 확인하고, readLines() 함수를 사용하여 파일의 모든 행을 리스트로 읽어옵니다. 그리고 선택한 행을 getOrElse() 함수를 사용하여 가져옵니다.

주의할 점은 행 번호는 1부터 시작하지만, 리스트의 인덱스는 0부터 시작하므로 선택한 행 인덱스를 1을 빼주었습니다.

이렇게 파일에서 특정 행을 선택하는 방법을 Kotlin에서 구현할 수 있습니다.