Hola a todos espero que estén bien, tengo un problema en java que al tratar de crear un archivo de texto en el escritorio, o la carpeta C me manda un error diciendo:
java.io.FileNotFoundException: C:\Users (Acceso denegado)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
at java.io.FileOutputStream.<init>(FileOutputStream.java:162)
at java.io.FileWriter.<init>(FileWriter.java:90)
at Humano.Acciones.Comandos(Acciones.java:65)
at Humano.Vivir.main(Vivir.java:58)
la verdad nunca me ha pasado me pueden ayudar? este es el codigo la idea es que el archivo se pueda hacer en diferentes pcs al pasar el programa:
public void Comandos(){
System.out.println("Revisa en tu escritorio, hice un archivo de texto donde estan las instrucciones");
try {
String ruta = "C:/Users";
String contenido = "Texto de prueba";
File file = new File(ruta);
// Si el archivo no existe es creado
if (!file.exists()) {
file.createNewFile();
}
FileWriter fw = new FileWriter(file);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(contenido);
bw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
este siempre me ha funcionado exepto ahora. ayuda
Cita de: JenselG en 26 Diciembre 2017, 21:21 PM
Hola a todos espero que estén bien, tengo un problema en java que al tratar de crear un archivo de texto en el escritorio, o la carpeta C me manda un error diciendo:
java.io.FileNotFoundException: C:\Users (Acceso denegado)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
at java.io.FileOutputStream.<init>(FileOutputStream.java:162)
at java.io.FileWriter.<init>(FileWriter.java:90)
at Humano.Acciones.Comandos(Acciones.java:65)
at Humano.Vivir.main(Vivir.java:58)
la verdad nunca me ha pasado me pueden ayudar? este es el codigo la idea es que el archivo se pueda hacer en diferentes pcs al pasar el programa:
public void Comandos(){
System.out.println("Revisa en tu escritorio, hice un archivo de texto donde estan las instrucciones");
try {
String ruta = "C:/Users";
String contenido = "Texto de prueba";
File file = new File(ruta);
// Si el archivo no existe es creado
if (!file.exists()) {
file.createNewFile();
}
FileWriter fw = new FileWriter(file);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(contenido);
bw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
este siempre me ha funcionado exepto ahora. ayuda
Testea este constructor
public File(String parent, String child) {}
Tal que quedaria asi como en la linea 6
public void Comandos(){
System.out.println("Revisa en tu escritorio, hice un archivo de texto donde estan las instrucciones");
try {
String ruta = "C:/Users";
String contenido = "Texto de prueba";
File file = new File(ruta,"Archivo.txt"); //ruta padre , ruta hija xD
// Si el archivo no existe es creado
if (!file.exists()) {
file.createNewFile();
}
FileWriter fw = new FileWriter(file);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(contenido);
bw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
Dado que cuando creas un objeto de tipo File se supondria que tienes el nombre del archivo no solo el
path o directorio por ejemplo, una ruta completa mas nombre de archivo en linux, para guindow$ como en tu caso.
private static final String RUTA = "/home/rubn/java/archivosJava/Ejercicio_1.txt";
Gracias por la respuesta amigo hare lo que dices aver como me va