inserire i dati in un file csv utilizzando il codice java in eclipse
Sto cercando di sviluppare un sistema di raccomandazione utilizzando Movielens 100k movies dataset. I t funziona bene per userid già presente nel set di dati , ma voglio firmare un nuovo utente, ottenere le sue valutazioni su un no fisso. 5) e poi dargli raccomandazioni basate sull'analisi. Per l'analisi, avrei bisogno di aggiungere le valutazioni che ha fornito(a 5 film) al mio set di dati che è in forma csv. Controlla la mia struttura di directory di eclipse maven dallo screenshot. Voglio modificare le valutazioni.csv sotto dati cartella.
Una volta che recupero i dati dal front-end , come posso aggiungerli nelle valutazioni.csv in modo da espandere il mio set di dati e quindi consentire ai nuovi utenti di ottenere consigli.
Valutazioni.csv contiene le seguenti colonne
user_id movie_id ratings
Posso in qualche modo aggiungere i dati alle valutazioni.csv
1 answers
private static void writeToCSV(List<Data> dataList) throws FileNotFoundException {
PrintWriter pw = new PrintWriter(new File("D:\\test.csv"));
StringBuilder sb = new StringBuilder();
sb.append("PAN,");
sb.append("REASON,");
sb.append("DATE");
sb.append("\n");
dataList.stream().map((data) -> {
sb.append(data.getPan() + ",");
return data;
}).map((data) -> {
sb.append(data.getReason() + ",");
return data;
}).map((data) -> {
sb.append(data.getDateTime() + "");
return data;
}).forEach((_item) -> {
sb.append("\n");
});
pw.write(sb.toString());
pw.close();
System.out.println("done!");
}
Se si desidera formattare i dati csv con lo spazio, è possibile utilizzare StringUtils (org.Apache.comune.lang)
private static String rightPad(String text, int length) {
return StringUtils.rightPad(text, length, " ");
}
private static String leftPad(String text, int length) {
return StringUtils.leftPad(text, length, " ");
}
Quindi per scrivere dati su file csv penso che non abbia bisogno di un altro lib