Как написать файл SimpleDateFormat для Android - PullRequest
0 голосов
/ 17 сентября 2011

Я новичок в мире Энди.Я делаю мое первое приложение.GPS трекер.Мне нужно сохранить координаты + (время, дата) в файл на SD.

Координаты просты, но Time & Date (в SimpleDateFormat) доставляют мне неприятности.

Метод write () имеетпроблема с SDF.Я пытался преобразовать в строку и многое другое.

Официальное сообщение об ошибке: «Метод write (byte []) в типе FileOutputStream не применим для аргументов (String)»

  FileOutputStream fos = openFileOutput("kris.txt", Context.MODE_PRIVATE);
    SimpleDateFormat sdf = new SimpleDateFormat( "yyyy/MM/dd' 'HH:mm:ss " ); 
    String k = sdf.toString();
    fos.write(k);
    fos.flush();
    fos.close();

1 Ответ

1 голос
/ 17 сентября 2011

Как я понял, вам просто нужно изменить метод. Для записи строк в файл вам необходимо использовать BufferedWrite или PrintWriter.

Попробуйте это:

public void writeLinesToFile(String filename,
                               String[] linesToWrite,
                               boolean appendToFile) {
    PrintWriter pw = null;
    try {
      if (appendToFile) {
        //If the file already exists, start writing at the end of it.
        pw = new PrintWriter(new FileWriter(filename, true));
      }
      else {
        pw = new PrintWriter(new FileWriter(filename));
      }
      for (int i = 0; i < linesToWrite.length; i++) {
        pw.println(linesToWrite[i]);
      }
      pw.flush();
    }
    catch (IOException e) {
      e.printStackTrace();
    }
    finally {
      //Close the PrintWriter
      if (pw != null)
        pw.close();
    }
  }

(код из руководства по Java)

...