Nexus S文本文件存储

时间:2011-06-20 21:31:44

标签: android text-files nexus-s android-file

我正在尝试从我的一个传感器读取数据并将其写入文本文件。我正在使用Eclipse,在Samsung Nexus S上运行我的项目。我想收集数据,将其存储到文本文件中,然后在我通过USB线将Nexus S连接到桌面时访问该文件。

我看过很多解释;但是,他们要么解释如何将文件保存到SD卡,这是Nexus S没有的,或者他们解释说Android不允许用户访问应用程序数据。我想避免生根电话。

我一直在使用两种主要的示例方法,请记住其中一种方法已被注释掉:

    public void appendLog(String text){
    //    try{
    //        FileOutputStream fout = openFileOutput("log.txt", MODE_WORLD_READABLE);
    //        OutputStreamWriter osw = new OutputStreamWriter(fout);

    //        osw.write(text);
    //        osw.flush();
    //        osw.close();
    //    }
    //    catch(IOException e){
    //        
    //    }


  File logFile = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + "log.txt");

  if(!logFile.exists()){
      try{
          logFile.createNewFile();
      }
      catch(IOException e){

      }
  }
  try{
      BufferedWriter buf = new BufferedWriter(new FileWriter(logFile, true));
      buf.append(text);
      buf.newLine();
      buf.close();
  }
  catch(IOException e){

  }
  }

1 个答案:

答案 0 :(得分:2)

Nexus S有一条“/ sdcard /”路径,就像大多数手机一样。您可以通过new File("/sdcard/");访问它,但首选方法是使用new File( Environment.getExternalStorageDirectory());。该命令为您提供外部存储位置,以防特定电话没有here所述的“/ sdcard”路径。