CSV(Comma-Separated Values)是一种常见的数据交换格式,每一行代表一条记录,每条记录由逗号分隔的多个字段组成。Kotlin 是一种现代的静态类型编程语言,它运行在 Java 虚拟机(JVM)上,可以与 Java 代码无缝互操作。
以下是一个使用 Kotlin 逐行读取 CSV 文件的简单示例:
import java.io.File
fun main() {
val csvFile = File("path/to/your/file.csv")
val lines = csvFile.readLines()
for (line in lines) {
val fields = line.split(",")
// 处理每个字段
for (field in fields) {
println(field)
}
}
}
原因:CSV 标准允许字段值包含逗号或换行符,但这些字段应该用双引号括起来。
解决方法:使用更复杂的解析器,如 opencsv
或 jackson-dataformat-csv
,它们能够正确处理带引号的字段。
import com.opencsv.CSVReader
import java.io.FileReader
fun main() {
val reader = CSVReader(FileReader("path/to/your/file.csv"))
var line: Array<String>?
while (reader.readNext().also { line = it } != null) {
for (field in line!!) {
println(field)
}
}
reader.close()
}
通过上述方法,你可以有效地使用 Kotlin 逐行读取 CSV 文件,并处理其中的数据。
领取专属 10元无门槛券
手把手带您无忧上云