Kotlin:打印带有数组元素的字符串,该元素会切断答案的左侧

时间:2019-03-08 14:00:54

标签: kotlin string-interpolation

我正在写一个基于文本的小型游戏,以熟悉Kotlin。我正在创建两个打印出多项选择选项的字符串。我已经确认可以正确捕获所有四个数组元素,但是在打印字符串时,它会切断a)和c)选项。我用过\ t,空格等,它也做同样的事情。我也尝试过只使用print()然后在最后使用\ n

println(menuList[0])
println(menuList[1])
println(menuList[2])
println(menuList[3])

println("a) ${menuList[0]} b) ${menuList[1]}")
println("c) ${menuList[2]} d) ${menuList[3]}")

输出:

erroneous output of multiple choice text

1 个答案:

答案 0 :(得分:0)

源文本来自一个文件,该文件用\r\n分隔了每一行,但是读取该文件的代码却用\n对其进行了拆分。结果是每个条目都以\r结尾。打印出来时,这将导致第一个值被覆盖。

解决方案是,在读取文件时将其拆分为\r\n而不是\n