属性文件
data.txt
shandy,Dragon's Breath,5.91,AA# elixir,shirley temple,4.12,BB# meal,goblet of la croix,1.22,CC# desert dessert,pickled camel hump,7.33,DD# elixir,iced boilermaker,11.22,EE# xin,xi,ke,ji
import java.io.File
import kotlin.math.roundToInt
val menuList1 = File("data.txt")
.readText()
.split("\n")
fun main(args: Array<String>) {
println("~~~~~~~~~~~~从文件中读取字符串~~~~~~~~~~~~~~~~~~~~~")
var random = menuList1.first()
var (type, name, price, ws) = random.split(',')
var message = ws.toString()
println("message => " + message)
println("message add tail => " + message + " add tail")
}
输出结果:
~~~~~~~~~~~~从文件中读取字符串~~~~~~~~~~~~~~~~~~~~~
message => AA#
add tail
会发现 message字符串并没有被输出
原因是:在读取属性文件时,每一行最后一个字符是换行符,所以要在读取文件时,要解析换行符
修改代码如下:
val menuList1 = File("data.txt")
.readText()
.split("\r\n")
注意和之前的代码的区别,多了一个换行符解析,“\r”
输出结果:
~~~~~~~~~~~~从文件中读取字符串~~~~~~~~~~~~~~~~~~~~~
message => AA#
message add tail => AA# add tail
本文介绍了在Kotlin中读取文本文件时遇到的问题,特别是关于换行符`
`的处理。通过示例代码展示了如何正确解析文件内容,确保不遗漏因换行符导致的数据。
70

被折叠的 条评论
为什么被折叠?



