Estoy leyendo 2 archivos csv: store_inventory
& new_acquisitions
.
Quiero poder comparar el archivo store_inventory
csv con new_acquisitions
. 1) Si los nombres de los elementos coinciden, actualice la cantidad en store_inventory. 2) Si new_acquisitions tiene un nuevo elemento que no existe en store_inventory
, agréguelo al store_inventory
.Java: archivo CSV de lectura y escritura
Esto es lo que he hecho hasta ahora pero no es muy bueno. Agregué comentarios donde necesito agregar taks & .
¡Cualquier consejo o código para realizar las tareas anteriores sería genial! Gracias.
File new_acq = new File("/src/test/new_acquisitions.csv");
Scanner acq_scan = null;
try {
acq_scan = new Scanner(new_acq);
} catch (FileNotFoundException ex) {
Logger.getLogger(mainpage.class.getName()).log(Level.SEVERE, null, ex);
}
String itemName;
int quantity;
Double cost;
Double price;
File store_inv = new File("/src/test/store_inventory.csv");
Scanner invscan = null;
try {
invscan = new Scanner(store_inv);
} catch (FileNotFoundException ex) {
Logger.getLogger(mainpage.class.getName()).log(Level.SEVERE, null, ex);
}
String itemNameInv;
int quantityInv;
Double costInv;
Double priceInv;
while (acq_scan.hasNext()) {
String line = acq_scan.nextLine();
if (line.charAt(0) == '#') {
continue;
}
String[] split = line.split(",");
itemName = split[0];
quantity = Integer.parseInt(split[1]);
cost = Double.parseDouble(split[2]);
price = Double.parseDouble(split[3]);
while(invscan.hasNext()) {
String line2 = invscan.nextLine();
if (line2.charAt(0) == '#') {
continue;
}
String[] split2 = line2.split(",");
itemNameInv = split2[0];
quantityInv = Integer.parseInt(split2[1]);
costInv = Double.parseDouble(split2[2]);
priceInv = Double.parseDouble(split2[3]);
if(itemName == itemNameInv) {
//update quantity
}
}
//add new entry into csv file
}
Gracias de nuevo por cualquier ayuda. =]
Encontrarás a obtener más y mejores respuestas si realmente hace una pregunta. –