Kann mir einer erklären, warum mein Programm aus einer .csv-Datei:
Eine Datei macht, die genauso aussieht wie die .xls Datei dazu ;(
Hier der Code, der die Datei anfasst
Code:
12013200191;101576623;35
12013200217;101576623;35
12013200300;101576623;35
12013200437;101576623;35
Eine Datei macht, die genauso aussieht wie die .xls Datei dazu ;(
Hier der Code, der die Datei anfasst
Java:
if(table.getName().toLowerCase().contains(".xls")) {
FileInputStream fIn = new FileInputStream(table);
POIFSFileSystem fileSystem = new POIFSFileSystem(fIn);
HSSFWorkbook workbook = new HSSFWorkbook(fileSystem);
HSSFSheet worksheet = workbook.getSheetAt(0);
@SuppressWarnings("unchecked")
Iterator<HSSFRow> rows = worksheet.rowIterator();
i = 0;
while(rows.hasNext()) {
if(i != 0) {
HSSFRow row = rows.next();
Objects ob = new Objects();
Iterator<Object> obList = row.cellIterator();
List<Object> objectList = new ArrayList<Object>();
while(obList.hasNext()) {
Object obj = obList.next();
objectList.add(obj);
}
ob.setObjectList(objectList);
objectListTable.add(ob);
} else {
HSSFRow row = rows.next();
}
i++;
}
} else if(table.getName().toLowerCase().contains(".csv")) {
FileReader in = new FileReader(table);
char[] cbuff = new char[5000000];
in.read(cbuff);
Objects ob = new Objects();
List<Object> objList = new ArrayList<Object>();
String aktuell = "";
for (char c : cbuff) {
if(c == 10 || c == 13) {
if(aktuell.length() > 20) {
objList.add(aktuell.substring(0, 11));
objList.add(aktuell.substring(11, 20));
objList.add(aktuell.substring(20));
ob.setObjectList(objList);
objectListTable.add(ob);
}
ob = new Objects();
objList = new ArrayList<Object>();
aktuell = "";
} else if(c >= 48 && c <= 57) {
aktuell += c;
}
}
}