[kotlin] 파일의 특정 부분을 변경하는 방법
먼저, File
객체를 생성하여 수정할 파일을 지정해야 합니다. 이때 파일 경로는 절대 경로 또는 상대 경로로 지정할 수 있습니다.
val file = File("경로/파일명.txt")
파일을 읽기 위해 BufferedReader
를 초기화합니다.
val reader = BufferedReader(FileReader(file))
파일의 내용을 수정하기 전에 원하는 위치를 찾아야 합니다. 이를 위해 반복문을 사용하여 파일을 한 줄씩 읽고 원하는 특정 부분을 찾을 수 있습니다.
var line: String?
var lineNumber = 0
val targetLine = "수정해야 할 부분"
while (reader.readLine().also { line = it } != null) {
lineNumber++
if (line == targetLine) {
// 원하는 부분을 찾았을 때의 로직을 구현합니다.
break
}
}
특정 부분을 찾았다면 파일을 쓰기 위해 FileWriter
를 초기화합니다.
val writer = FileWriter(file)
수정이 필요한 부분을 새로운 값으로 변경한 후 파일에 쓰는 작업을 수행합니다.
writer.write("변경된 값")
파일의 나머지 부분을 그대로 유지하고 싶다면 수정이 필요한 부분을 제외한 나머지 내용을 다시 쓰는 작업이 필요합니다.
while (reader.readLine().also { line = it } != null) {
if (line != targetLine) {
writer.write(line + "\n")
}
}
수정이 끝나면 파일을 닫아주어야 합니다.
reader.close()
writer.close()
이제 파일의 특정 부분을 수정하는 방법에 대해 알아보았습니다. Kotlin에서는 FileWriter
와 BufferedReader
를 사용하여 파일을 수정할 수 있습니다. 조금 더 복잡한 파일 수정을 원한다면 RandomAccessFile
클래스를 사용할 수도 있습니다. 이 클래스는 파일의 특정 위치를 찾아서 수정하는 데 유용합니다.