Hello,I want to delete a row from .csv file using JAVA.
that the user can decide witch row they want to delete. The input be like:
delete a number:
A02,40
And the file will be like:
Could anyone give me some suggestion?
This is how I write into .csv file Hope it will help
package finaltest;
import java.util.Scanner;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
public class AddCourse {
public static void main(String[] args) throws Exception {
Map<String, List<String>> map = new TreeMap<String, List<String>>();
BufferedReader reader = new BufferedReader(new FileReader("DB_ID.csv"));
String line = reader.readLine();//read header
while ((line = reader.readLine()) != null) {
String key = getField(line);
List<String> l = map.get(key);
if (l == null) {
l = new LinkedList<String>();
map.put(key, l);
}
l.add(line);
}
reader.close();
FileWriter additem = new FileWriter("add_ID.csv");
additem.write("item_id, item_prisen");
System.out.println("please input number: ");
Scanner in = new Scanner(System.in);
List<String> input = new LinkedList<String>();
input.add(in.next());
for (String val : input) {
additem.write(val);
additem.write("n");
}
in.close();
for (List<String> list : map.values()) {
for (String val : list) {
additem.write(val);
additem.write("n");
}
}
additem.close();
}
private static String getField(String line) {
return line.split(",")[0];// extract value you want to sort on
}
}