Почему мой метод не добавляет CSV-файл? - PullRequest
0 голосов
/ 18 мая 2019

Я пытаюсь экспортировать GPS-данные со своего смартфона Android 7 в файл .csv в течение некоторого времени, пока isSaveCSV () имеет значение true.

public void saveCSVfile() {
    if (isSaveCSV()) {
        Long time = System.currentTimeMillis()/1000;
        String entry =time.toString()+","+lat+","+lon+"\n";
        if (csv_created==false) {
            csv_created=true;
            FILECOUNT++;
            NEWFILENAME = FILENAME+FILECOUNT+".csv";
            File myDir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "tensorflow");
            csvfile = new File(myDir, NEWFILENAME);
            try {
                FileOutputStream out = new FileOutputStream(csvfile);
                out.write( entry.getBytes() );
                out.close();
            } catch (final Exception e) {
                LOGGER.e(e, "Exception!");
            }
        }else {

            try {
                entry="TESTFORFOOSAKE";
               FileOutputStream out = openFileOutput(csvfile.getName(), Context.MODE_APPEND);
                out.write(entry.getBytes());
                out.close();
            } catch (final Exception e) {
                LOGGER.e(e, "Exception!");
            }
        }
    }else {
        csv_created=false;
    }
}

Файл всегда состоит из одной строки .. Я никогда не видел двухстрочный файл ..

1 Ответ

0 голосов
/ 18 мая 2019

Если вы хотите добавить к существующему файлу, вы должны использовать перегруженный конструктор, который принимает логический аргумент:

FileOutputStream out = new FileOutputStream(csvfile, true);
// Here ---------------------------------------------^
...