[kotlin] 파일 관련 정보를 JSON으로 저장하는 방법

Kotlin은 파일을 다루는 강력한 기능을 제공하는 프로그래밍 언어입니다. 파일 관련 정보를 JSON 형식으로 저장하려면 다음과 같은 단계를 따를 수 있습니다.

1. JSON 라이브러리 추가

먼저, GSON이라는 JSON 라이브러리를 프로젝트에 추가해야 합니다. GSON은 Kotlin에서 JSON을 다루는데 매우 편리한 라이브러리입니다.

Gradle을 사용하는 경우, build.gradle 파일에 다음 의존성을 추가하세요:

dependencies {
    implementation 'com.google.code.gson:gson:2.8.7'
}

Maven을 사용하는 경우, pom.xml 파일에 다음 의존성을 추가하세요:

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.7</version>
</dependency>

2. 파일 정보를 JSON으로 변환

파일 관련 정보를 JSON으로 변환하기 위해, 파일 경로와 관련된 정보를 객체에 저장해야 합니다. 아래의 코드를 참고하여 JSON에 저장할 파일 정보를 담은 객체를 생성합니다.

import com.google.gson.Gson
import java.io.File

data class FileInfo(val name: String, val size: Long, val lastModified: Long)

fun main() {
    val file = File("path/to/file.txt")
    val fileInfo = FileInfo(file.name, file.length(), file.lastModified())

    val gson = Gson()
    val json = gson.toJson(fileInfo)

    println(json)
}

위 코드에서 FileInfo 클래스는 파일의 이름, 크기, 수정 시간을 저장하는 데이터 클래스입니다. main 함수에서는 File 클래스를 사용하여 파일의 정보를 읽은 후 FileInfo 객체를 생성합니다.

Gson 객체를 사용하여 fileInfo 객체를 JSON 문자열로 변환한 후 출력합니다.

3. JSON을 파일에 저장

위에서 생성한 JSON 문자열을 실제 파일에 저장하려면, 다음 단계를 따르세요.

import com.google.gson.Gson
import java.io.File

data class FileInfo(val name: String, val size: Long, val lastModified: Long)

fun main() {
    val file = File("path/to/file.txt")
    val fileInfo = FileInfo(file.name, file.length(), file.lastModified())

    val gson = Gson()
    val json = gson.toJson(fileInfo)

    val outputFile = File("path/to/output.json")
    outputFile.writeText(json)

    println("JSON 파일이 생성되었습니다.")
}

위 코드에서 outputFile 객체가 생성하는 파일은 output.json 입니다. writeText 함수를 사용하여 json 변수를 파일에 저장합니다.

이렇게 하면 파일 관련 정보를 JSON으로 변환하고 파일에 저장할 수 있습니다.

결론

Kotlin에서 파일 관련 정보를 JSON으로 저장하는 것은 매우 간단합니다. GSON 라이브러리를 사용하여 파일 정보를 담은 객체를 JSON 문자열로 변환한 후 파일에 저장할 수 있습니다. 이를 통해 파일 관련 정보를 효과적으로 저장하고 활용할 수 있습니다.

참고 자료