Please refer below code snippet, You can do something like this in your requirement. But You can´t write in C:/ Drive till you run your java code as administrative.
SystemDrives.java:
-------------------------------------------------------
package in.anyforum;
import java.io.File;
import java.io.IOException;
import javax.swing.filechooser.FileSystemView;
public class SystemDrives {
public static void main(String[] args) {
File[] drives=displayAllSystemDrivesWithPermissions();
writingHiddenFileToDrives(drives);
}
public static File[] displayAllSystemDrivesWithPermissions(){
File[] roots = File.listRoots();
for(int i = 0; i < roots.length ; i++)
System.out.println(roots[i]+" | "+FileSystemView.getFileSystemView().getSystemDisplayName(roots[i])+" | CAN READ? "+roots[i].canRead()+" | CAN Write?"+roots[i].canWrite());
return roots;
}
public static void writingHiddenFileToDrives(File[] drives){
try{
for(File file:drives){
file=new File(file.getPath()+"MyHiddenFile.java");
boolean status=file.createNewFile();
setHiddenProperty(file);
System.out.println(status?"Written":"Something went wring");
}
}catch (Exception e) {
System.out.println(e);
}
}
public static void setHiddenProperty(File file) throws InterruptedException, IOException {
Runtime.getRuntime().exec("attrib +H "+file.getPath());
}
}
4