[Kotlin] Json to CSV
반응형
API에서 받아온 JSON을 CSV로 Export하기 위해 매서드를 작성했다.
fun jsonToCsv(jsonData: String, outputFilePath: String) {
val jsonArray = JSONArray(jsonData)
// CSV 파일 생성
File( outputFilePath).bufferedWriter().use { writer ->
// CSV 헤더 작성
if (jsonArray.length() > 0) {
val headers = jsonArray.getJSONObject(0).keys()
writer.write(headers.asSequence().joinToString(",") { it })
writer.newLine()
}
// 각 JSON 객체를 CSV로 변환
for (i in 0 until jsonArray.length()) {
val jsonObject = jsonArray.getJSONObject(i)
val values = jsonObject.keys().asSequence().map { key ->
// CSV 호환을 위해 필드 값을 따옴표로 둘러싸기
"\"${jsonObject.getString(key).replace("\"", "\"\"")}\""
}.joinToString(",")
writer.write(values)
writer.newLine()
}
}
}
반응형
'Study > Kotlin' 카테고리의 다른 글
[Kotlin] webView에서 Activity로 명령 주고받기 (0) | 2024.04.26 |
---|
댓글