Ciao,
Ho un file .csv di circa 3000000 righe nel seguente formato (ridotto per semplicità sono più di tre righe):
Quello che voglio ottenere è un altro file in cui nella prima colonna i numeri siano sequenziali, esemplificando dovrebbe diventare così:codice:1,1,22.5714 1,2,22.8347 1,3,23.1627 @ 3,1,22.1473 3,2,22.7027 3,3,22.7747 @ 5,1,22.644 5,2,22.7653 5,3,22.6863
L'ho scritto in java ma è altamente inefficiente ci mette ore e fin ora non son riuscito a terminare l'esecuzione...codice:1,1,22.5714 1,2,22.8347 1,3,23.1627 @ 2,1,22.1473 2,2,22.7027 2,3,22.7747 @ 3,1,22.644 3,2,22.7653 3,3,22.6863
Potete aiutarmi a tradurlo in bash?codice:public void rinominaPrimaColonna(String inputFile) throws IOException{ String line = ""; String output = ""; String s[] = inputFile.split("\\."); String outFile = s[0]+"_t1.csv"; FileWriter fw = new FileWriter(new File(outFile)); BufferedReader orig = new BufferedReader(new FileReader(inputFile)); int i = 1; while((line = orig.readLine()) != null){ if(!line.equals("@")){ String item[] = line.split(","); output += i + "," + item[1] + "," + item[2] + "\n"; } else{ output += line + "\n"; i++; } } fw.write(output); fw.flush(); fw.close(); }
Grazie

Rispondi quotando
