ивы получили эту спецификацию файл CSV:Синтаксические один CSV строки
- Key - Структурированный в категории: ID, где ID это порядковый номер. Там нет необходимости (или использовать), чтобы разделить это на двух частей, просто обработайте ключ как единое уникальное значение
- Бренд - Производитель продукта
- модели - Название модели продукта
- WeightInKg - Вес продукта, округлены до ближайшего кг
- Цена - Цена продажи продукта до 2 знаков после запятой (2DP)
и я получил этот код, чтобы разметить каждую строку:
public WarehouseItem(String warehouseItem) {
String key, brand, model;
int weightInKG;
double price;
StringTokenizer strTok;
strTok = new StringTokenizer(warehouseItem);
try {
key = strTok.nextToken();
brand = strTok.nextToken();
model = strTok.nextToken();
weightInKG = Integer.parseInt(strTok.nextToken());
price = Double.valueOf(strTok.nextToken());
}
catch (Exception e) {
throw new IllegalStateException("CSV row had invalid format");
}
}
Когда я пытаюсь запустить его, я получаю IllegalStateException для файла CSV.
Exception in thread "main" java.lang.IllegalStateException: CSV row had invalid format
at WarehouseItem.<init>(WarehouseItem.java:23) // throwing exception
at main.loadRecords(main.java:63) // records[numRows] = new WarehouseItem(warehouseItem); storing into array of objects
at main.main(main.java:26) // loadRecords(); calling the function which reads a line
at main.loadRecords(main.java:78) // main(null); recursing back to main
at main.main(main.java:26) // loadRecords(); calling the function which reads a line
Heres пример строки в файле CSV:
Couch: 6, Fremarc, Делюкс, 101,1871.7
им думать, может быть, его, потому что ключ имеет идентификатор как порядковый номер? ? или это вообще не имеет значения? im confused и любая помощь будет оценена
Можете ли вы опубликовать точную ошибку вы получаете? EDIT: Нет ... вы не можете. Вы можете вытащить его из блока 'try catch', запустить его, а затем сообщить нам, какую ошибку вы получаете? – nhgrif
Я получаю исключение NoSuchElementException, когда я удалил его на блок try-catch –
Что такое строка 23? Строка 26? Линия 63? Строка 78? – nhgrif