Sto provando a creare una directory ma sembra fallire ogni volta? Ho verificato che non si tratta di un problema di autorizzazione, ho il pieno permesso di scrivere in quella directory. Grazie in anticipo.Java - mkdir() non scrive la directory
Ecco il codice:
private void writeTextFile(String v){
try{
String yearString = convertInteger(yearInt);
String monthString = convertInteger(month);
String fileName = refernce.getText();
File fileDir = new File("C:\\Program Files\\Sure Important\\Report Cards\\" + yearString + "\\" + monthString);
File filePath = new File(fileDir + "\\"+ fileName + ".txt");
writeDir(fileDir);
// Create file
FileWriter fstream = new FileWriter(filePath);
try (BufferedWriter out = new BufferedWriter(fstream)) {
out.write(v);
}
}catch (Exception e){//Catch exception if any
System.err.println("Error: " + e.getMessage());
}
}
private void writeDir(File f){
try{
if(f.mkdir()) {
System.out.println("Directory Created");
} else {
System.out.println("Directory is not created");
}
} catch(Exception e){
e.printStackTrace();
}
}
public static String convertInteger(int i) {
return Integer.toString(i);
}
Calendar cal = new GregorianCalendar();
public int month = cal.get(Calendar.MONTH);
public int yearInt = cal.get(Calendar.YEAR);
Ecco l'output:
Directory is not created
Error: C:\Program Files\Sure Important\Report Cards\2012\7\4532.txt (The system cannot find the path specified)
acclamazioni che sembra essere il problema, accetterò la risposta quando mi alows a :) GRAZIE!!! – Nick
Poiché la parte "dinamica" del percorso ha due directory, direi che questa teoria è abbastanza buona ... –
Ho copiato il tuo codice, l'ho cambiato in mkdirs() e ha funzionato. Modifica per includere il codice rilevante –