[kotlin] 파일을 특정 포맷으로 인코딩하는 방법
이 글에서는 Kotlin 언어를 사용하여 특정 파일을 다른 인코딩 포맷으로 변환하는 방법에 대해 알아보겠습니다.
일반적으로 파일을 인코딩하기 위해 java.nio.charset
패키지에서 제공하는 Charset
클래스를 사용하면 됩니다. Charset
클래스는 다양한 인코딩 포맷을 지원하고 있으므로, 원하는 포맷으로 파일을 인코딩할 수 있습니다.
다음은 파일을 특정 포맷으로 인코딩하는 Kotlin 코드 예시입니다:
import java.io.*
import java.nio.charset.*
fun main() {
val sourceFile = File("input.txt")
val targetFile = File("output.txt")
val sourceCharset = Charsets.UTF_8 // 원본 파일 인코딩 포맷
val targetCharset = Charset.forName("EUC-KR") // 변환할 인코딩 포맷
sourceFile.reader(sourceCharset).use { input ->
targetFile.writer(targetCharset).use { output ->
input.copyTo(output)
}
}
}
위 코드는 input.txt
파일을 UTF-8 인코딩으로 읽고, 그 내용을 EUC-KR 인코딩으로 output.txt
파일에 씁니다. Charsets
클래스를 사용하여 기본 제공되는 인코딩 포맷을 지정할 수 있으며, Charset.forName()
메서드를 사용하여 사용자 정의 인코딩 포맷을 지정할 수도 있습니다.
다음은 몇 가지 주의사항입니다:
- 파일 경로와 파일명은 실제 파일의 경로로 대체해야 합니다.
writer()
함수는 파일을 쓰기 모드로 열게 됩니다. 따라서 해당 파일이 이미 존재한다면, 기존 파일은 덮어쓰게 되니 주의해야 합니다.
추가적인 자세한 내용은 Kotlin 공식 문서를 참조하십시오.
이제 Kotlin을 사용하여 파일을 특정 포맷으로 인코딩하는 방법을 알게 되었습니다. 코드 예시를 참고하여 필요한 곳에 적용해 보세요.