Игнорировать неправильные строки файла CSV на Android - PullRequest
1 голос
/ 04 апреля 2020

Я загружаю файл CSV с URL-адреса, и пока все хорошо, проблема в том, что они немного изменили формат файла, и теперь последняя строка содержит только текст, поэтому он имеет только один столбец, когда обычно 7, я получаю следующую ошибку:

Fields num seems to be 7 on each row, but on 820th csv row, fields num is 1.

Сейчас я только что попробовал это, и это работает, потому что они уже изменили файл Excel и добавили в конце этой строки необходимые запятые, чтобы заставить это работать хорошо, но, если это случится снова, есть ли способ, которым через код я могу включить эти запятые или другой способ решить это? Я оставляю вам мой код:

            try {
                val rows: List<List<String>> = csvReader().readAll(URL(CASES_FILE_URL).openStream())
                val listCCAA: List<CasesModel> = rows.map {
                    CasesModel(it [0], it [1], it [2], it [3], it [4], it [5], it [6])
                }
                val lastDate: String = listCCAA.map { it.date }.last { it.isNotEmpty() }
                val finalItems = listCCAA.filter { lastDate == it.date }
                casesRepositoryLiveDataContract.onSuccess(finalItems)
            } catch (e: Exception) {
                e.printStackTrace()
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...