3

当我尝试使用 opencsv 将数据写入文件时,该文件被覆盖。所有以前的数据都被删除并保留最后的数据。我使用了本教程http://opencsv.sourceforge.net/#can-I-write,但没​​有帮助。

        case 3:
            CSVReader reader = new CSVReader(new FileReader(file));
            if (reader.readNext()==null) { 
                reader.close();
                CSVWriter writer = new CSVWriter(new FileWriter(file));
                String[]entries="first#second#third".split("#");
                writer.writeNext(entries);
                writer.close();
            }
            CSVWriter writer = new CSVWriter(new FileWriter(file),',');
            String[]entries = new String[7];
            System.out.print("Введите Фамилию(обязательно): ");
            entries[0]=check(br.readLine());
            System.out.print("Введите имя(обязательно): ");
            entries[1]=check(br.readLine());
            System.out.print("Введите Отчество(обязательно): ");
            entries[2]=check(br.readLine());
            System.out.print("Введите телефон мобильный(обязательно): ");
            entries[3]=check(br.readLine());
            System.out.print("Введите телефон домашний: ");
            entries[4]=br.readLine();
            System.out.print("Введите адресс: ");
            entries[5]=br.readLine();
            System.out.print("Введите e-mail: ");
            entries[6]=br.readLine();
            writer.writeNext(entries);
                writer.close();
            break;

我应该怎么做才能解决这个问题?

4

2 回答 2

3

如果您阅读javadoc,FileWriter您将得到答案。

FileWriter有一个允许附加到文件的构造函数:FileWriter(File file, boolean append)

于 2013-06-17T11:54:40.207 回答
1

您可以将 CSV Writer 创建为

CSVWriter csvwriter = new CSVWriter(new FileWriter(file, true));
于 2016-10-19T01:41:08.580 回答