如何在Android中设置文件长度为零?

如何在Android中设置文件长度为零?,android,file,Android,File,我想将文件长度设置为零。我使用了以下代码 try { new RandomAccessFile(file,"rw").setLength(0); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block Log.i("Exception caught ==> ", e1.toStr

我想将文件长度设置为零。我使用了以下代码

      try 
      {
          new RandomAccessFile(file,"rw").setLength(0);
      } 
      catch (FileNotFoundException e1) 
      {
          // TODO Auto-generated catch block
          Log.i("Exception caught ==> ", e1.toString());
          e1.printStackTrace();
      } 
      catch (IOException e) 
      {
          // TODO Auto-generated catch block
          Log.i("Exception caught ==> ", e.toString());
          e.printStackTrace();
      }

问题是,如果我在文件中写的任何东西都意味着,它在文件中显示了一些特殊字符,比如aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa。请给我一些建议。

问题可能在读取缓冲区中。如果您想读取一个包含10字节数据的文件,并且您创建了一个字节[]为15,那么您将在那里获得额外的null。最好创建一个大小与文件长度相同的字节数组。获取字符串后,还可以修剪()数据

我尝试了以下代码,但没有得到任何问题

示例代码 与

或者也

try (FileWriter fw = new FileWriter("xxx")) {
    fw.write("");
}

嗨,Sunil,现在spl字符不显示。但文件长度保持不变。以及如何在开始时设置文件指针尝试手动读取文件。是否存储了特殊字符
try (FileOutputStream fos = new FileOutputStream("xxx")) {
    fos.write(new byte[0]);
}
try (FileWriter fw = new FileWriter("xxx")) {
    fw.write("");
}