У меня есть текстовый файл с тремя строками кода, и мне нужно взять каждую строку и разделить ее на , чтобы я мог взять части из каждой строки и поместить их в класс. У меня будет один класс для каждой строки.
Это то, что я придумал, софер. Я просто думаю, что это слишком много кода, и хотел бы найти простой способ сделать это.
Текстовый файл выглядит так
character, stats, stats, stats
weapon, stats
armor, stats
мой код для первой строки выглядит так
class CharacterFight(
var name : String,
var race : String,
var hitpoints :Int,
var strength : Int,
var agility : Int,
){
override fun toString(): String {
return """Character
Name: ${name}
Race: ${race}
Hitpoints :${hitpoints}
Strength: ${strength}
Agility: ${agility}
""".trimMargin()
}
}
var charactersStats = mutableListOf<CharacterFight>()
var charStats = mutableListOf<String>()
val fileName: String = "src/main/kotlin/gimli.txt"
var characterInfo = mutableListOf<String>()
var lines = File(fileName).readLines()
for (line in lines){
val pieces = line.split("\n")
characterInfo.add(line)
}
charStats.add(characterInfo[0])
for (stat in charStats){
var statpieces = stat.split(",")
var charpieces = CharacterFight(statpieces[0],statpieces[1],statpieces[2].toInt(),statpieces[3].toInt(),statpieces[4].toInt)
charactersStats.add(charpieces)
}```
\n
из файла, а затем просто прочитал его как обычный csv с одной строкой (вам может потребоваться обрезать целые числа, потому что у вас есть пробелы, или заменить,space
на,
). - person Alex.T   schedule 24.10.2020