在外部存储的文件中写入虚拟内容android

问题描述:

在下面提到的代码中,我将虚拟内容写入名为“testfile.txt”的文件中。但我想在外部存储的任何文件中编写虚拟内容。我不希望文件名被硬编码。我该怎么做?在外部存储的文件中写入虚拟内容android

String root = android.os.Environment.getExternalStorageDirectory().getPath(); 
File myFile = new File(root,"testfile.txt"); 

FileChannel rwChannel = new RandomAccessFile(myFile, "rw").getChannel(); 
int numBytes = (int)rwChannel.size(); 
ByteBuffer buffer = rwChannel.map(FileChannel.MapMode.READ_WRITE, 0, numBytes); 
System.out.println("buffer"+buffer); 
byte[] randomBytes = new byte[numBytes]; 
new Random().nextBytes(randomBytes); 
buffer.put(randomBytes); 
rwChannel.write(buffer); 
rwChannel.close(); 

File root = android.os.Environment.getExternalStorageDirectory(); 
File[] files = root.listFiles(); 
for (File f : files) { 
    if (f.isDirectory()) 
     continue; 
    //write here 
} 
+0

我收到错误的RandomAccessFile作为,改变类型的文件到文件。 File [] files = root.listFiles();对于(文件f:文件){if(f.isDirectory()) \t继续; FileChannel rwChannel = new RandomAccessFile(files,“rw”)。getChannel(); – user2435558