0

In the below mentioned code I am writing dummy contents in a file called "testfile.txt". But I want to write dummy contents in any of the files of the external storage. I don't want the file name to be hard coded. How do I do?

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();

1 Answers1

0
File root = android.os.Environment.getExternalStorageDirectory();
File[] files = root.listFiles();
for ( File f : files ) {
  if (f.isDirectory()) 
        continue;
  //write here
}
Blackbelt
  • 156,034
  • 29
  • 297
  • 305
  • I am getting error in RandomAccessFile as, change type files to file. File[] files = root.listFiles(); for ( File f : files ) { if (f.isDirectory()) continue; FileChannel rwChannel = new RandomAccessFile(files, "rw").getChannel(); – user2435558 Jun 04 '13 at 10:14