jump to navigation

Crear un fichero en Java Julio 21, 2007

Publicado por lineadecodigo en : Java , trackback

Si queremos crear un fichero con Java nos tenemos que apoyar en la clase File de Java IO la cual nos proporciona un método creteNewFile que generará el fichero en el path que le indiquemos.

Si bien debemos de tener en cuenta que el "directorio base" donde creemos el fichero debe de existir. Por ejemplo, en el caso de que creemos un fichero indicando el path "c:\temp\lineadecodigo\ficheroTexto", los directorios temporal y lineadecodigo deben de existir.

Así instanciaremos el objeto File de la siguiente forma:

File fichero = new File ("c:\\temp\\lineadecodigo\\fichero.txt");

o bien indicando el directorio y el fichero por separado:

File fichero = new File ("c:\\temp\\victor","fichero.txt");

Debemos de tener cuidado en utilizar la doble barra para indicar el directorio ya que cuando utilizamos la barra sola se asume que es una secuencia de escape del estilo \n \b \t...

Una vez creado el fichero simplemente bastará invocar el método createNewFile teniendo cuidado de que puede ser lanzada la excepción IOException a si que debemos de capturarla.

try {
  // A partir del objeto File creamos el fichero físicamente
  if (fichero.createNewFile())
    System.out.println("El fichero se ha creado correctamente");
  else
    System.out.println("No ha podido ser creado el fichero");
} catch (IOException ioe) {
  ioe.printStackTrace();
}

El método devolverá true si ha podido crear el fichero y false si no ha podido llevarlo a cabo.

Visualizar el ejemplo | Descargar el código

Articulos Similares:

|- Foro sobre Java IO

Enviar entrada por email Enviar entrada por email | Imprimir Imprimir | 22437 visitas

1 Star2 Stars3 Stars4 Stars5 Stars (2 votos, media: 5.00 de 5)
Loading ... Loading ...

Comentarios»

1. rayner - Julio 31, 2007

muy bueno

2. Pablo - Abril 24, 2008

¿como puedo hacer para eliminar un fichero de una carpeta y luego copiar otro a esa carpeta con JAVA?

3. Alberthoven - Julio 31, 2008

Si lo que quieres es crear un temporal, ¿por qué no utilizas el método estático concebido para ello?:

File tempFile = File.createTempFile(“nombreFichero”, “.tmp”);

4. ShadowKakashi - Abril 6, 2009

Gracias, ya me había traumado de que no creara el archivo fisicamente con solo el “File fichero=new File(“archivo.txt”);”

5. jstuck - Abril 27, 2009

tengo un programa en java que lee archivvos de texto y despues cada linea las inserta en una base de datos.. hasta hay todo bien..

la duda que tengo es si existe algun metodo o algo en java que haga que cuando io escriba algo en el archivo de texto el programa leea esa linea que se agrego y pues que por ende se aga el insert a la BD.

aqui mi duda es como aserle para que el programa leea la linea que se agrego todo lo demas ya lo tengo..

graciasss..

este es mi codigo o paret de el..

.
.
.
. public static void main(String [] arg) {
File archivo = null;
FileReader fr = null;
BufferedReader br = null;

try {
// Apertura del fichero y creacion de BufferedReader para poder
// hacer una lectura comoda (disponer del metodo readLine()).
archivo = new File (“/Users/nameuser/Desktop/texto.txt”);
fr = new FileReader (archivo);
br = new BufferedReader(fr);

//conexion a la base de datos e insercion de las lineas leidas por el bufferreading
String aux = null;
String linea = aux;
do{
Class.forName (“com.mysql.jdbc.Driver”).newInstance ();
con = DriverManager.getConnection (url, user, passwd);
st = con.createStatement();

String insertSql = “insert into “+ table +” (lectura) values(‘”+linea +”‘);”;
st.executeUpdate(insertSql);
System.out.println(insertSql);
// Lectura del fichero

}while((linea=br.readLine())!=null);
aux = linea;
}
catch(Exception e){
e.printStackTrace();
}.
.
.
.
.

6. jstuck - Abril 27, 2009

si me pueden mandar algunas referencias graciasss..

lo que sea.. se los agradecere
grax

7. Marlio - Mayo 5, 2009

tengo este codigo, esto he realizado hasta el momento pero no he podido, bueno mi pregunta es:

neceisto guardar el orden que le de segun la opcion en una archivo que se crea con un metodo archivo, tambien necesito guardar en el archivo la cantidad de nodos del arbol y tambien necesito imprimir en pantalla o en el archivo

import java.applet.*;
//import java.awt.*;
import java.io.*;

class Nodo
{
int info;

Nodo der;
Nodo izq;
Nodo (int info)
{
this.info = info;
izq = der = null;
}
}

public class arboles extends Applet
{
int cantNodos;
int altura = 0;

public arboles() throws IOException
{
Nodo raiz = binario();
caltura(raiz, 0);

System.out.print(“LA ALTURA ES =>” );
System.out.println(altura );
System.out.println(“”);

System.out.print(“LA CANTIDAD DE NODOS DEL ARBOL ES =>” );
System.out.println( );
System.out.println(“”);

System.out.println(“<>” );
System.out.println(“”);

System.out.println( “1) :<>” );
System.out.println( “2) :<>” );
System.out.println( “3) :<>” );

System.out.println(“”);
System.out.print( “<>” );

BufferedReader leer = new BufferedReader(new InputStreamReader(System.in));
String linea = leer.readLine();
int opcion = Integer.parseInt(linea);

System.out.println(“”);
System.out.println(“”);

System.out.println(“<>” );
System.out.println(“”);

System.out.println( “4) :<>” );
System.out.println( “5) :<>” );

System.out.println(“”);
System.out.print( “<>” );

BufferedReader leer1 = new BufferedReader(new InputStreamReader(System.in));
String linea1 = leer1.readLine();
int opcion1 = Integer.parseInt(linea1);

if (opcion == 1)
preorden(raiz);

if (opcion == 2)
posorden(raiz);

if (opcion == 3)
inorden(raiz);

/*if (opcion1== 4)
archivo();
*/
if (opcion1== 5)
archivo();

}

Nodo binario()
{
Nodo m=new Nodo(17);
InsDer(m,15);
InsIzq(m,1);
InsDer(m.der,21);
InsDer(m.der.der,27);
InsDer(m.der.der.der,13);
InsIzq(m.der.der.der,9);
InsIzq(m.der.der,4);
InsIzq(m.der,2);
InsDer(m.der.izq,29);
InsIzq(m.der.izq,14);
InsDer(m.der.izq.izq,19);
InsIzq(m.der.izq.izq,28);
InsDer(m.izq,6);
InsIzq(m.izq.der,25);
InsDer(m.izq.der.izq,30);
InsIzq(m.izq.der.izq,16);
InsIzq(m.izq,23);
InsDer(m.izq.izq,5);
InsDer(m.izq.izq.der,31);
InsIzq(m.izq.izq,12);
InsDer(m.izq.izq.izq,24);
InsIzq(m.izq.izq.izq,11);

return m;
}

void InsDer(Nodo raiz,int n)
{
Nodo Nuevo = new Nodo (n);
raiz.der=Nuevo;
}

void InsIzq(Nodo raiz,int n)
{
Nodo Nuevo = new Nodo (n);
raiz.izq=Nuevo;
}

void archivo() throws IOException
{
File mm = new File(“c:\\archivo\\java”,”mm.txt”);
try {

if (mm.createNewFile())
System.out.println(“EL Archivo se ha creado correctamente”);
else
System.out.println(“El Archivo no pudo ser creado”);
} catch (IOException ioe) {
ioe.printStackTrace();
}
}

void preorden (Nodo Raiz)
{
if (Raiz!=null)
{
System.out.println(Raiz.info);

preorden (Raiz.izq);
preorden(Raiz.der);
}

}

void posorden(Nodo Raiz)
{
if (Raiz!=null)
{
posorden(Raiz.izq);
posorden(Raiz.der);
System.out.println(Raiz.info);
}
}
void inorden(Nodo Raiz)
{
if (Raiz!=null)
{
inorden(Raiz.izq);
System.out.println(Raiz.info);
inorden(Raiz.der);

}
}

void caltura (Nodo Raiz, int alt)
{
if (alt > altura)
altura = alt;

if (Raiz!=null){
caltura (Raiz.izq, alt+1);
caltura (Raiz.der, alt+1);

}
}

}

8. Marlio - Mayo 5, 2009

agradeceria cualquier ayuda , ya que es nota para parcial y es hata hoy o para el sabado. gracias

9. Marlio - Mayo 5, 2009

agradeceria cualquier ayuda , ya que es nota para parcial y es hata hoy o para el sabado. gracias…

10. Marina - Julio 6, 2009

Hola, necesito grabar en un txt el resultado de una consulta SQL, es decir, me conecto a la BD, armo la sentencia SQL (puntos ya resueltos) y grabo una línea en txt por cada registro que emitirá la consulta.
Si alguien puede ayudarme se los agradeceria. Saludos

11. lineadecodigo - Julio 6, 2009

@Marina,

Lo que tienes que hacer es leerte el artículo Escribir en un fichero de texto con Java.

Verás como es muy sencillo. Espero que te sea de ayuda.

12. sasasasa - Julio 31, 2009

NO SE NADA DE PROGAMACION ASI QUE NI MEDRES LES PUEDO AIUDAR OK

13. saia - Octubre 1, 2009

muchas gracias!!!! sos geinales

14. Mayte - Octubre 22, 2009

Hola,

Necesitaría abrir un fichero binario y mostrar cada byte que contenga por pantalla, he estado utilizando RandomAccessFile, pero no me sacaba correctamente el resultado. El contenido del binario son hexadecimales.

Muchas gracias

15. Super Jav@ - Noviembre 10, 2009

Hola hola necesito ayuda
tengo q hacer un programa en java que realize el censo y este se acomode en rangos de edad exixten 7 rangos del 0 a el 6. bhalguien me ´puedwe hayudar ???
las edades se deben acomodar en el rango correspondiente utilizando arreglos de tipo nodo
Rango 0(0-8)
Rango 1(9-15)
Rango2(16-22)
Rango3(23-30)
Rango4(31-45)
Rango5(46-60)
Rango6(61-100)

16. lineadecodigo - Noviembre 11, 2009

@Super Jav@,

Te recomiendo que pongas tu pregunta en los foros, por si te puede ayudar alguien.

El foro recomendado es Foro Java Basico.




Si tienes dudas sobre Java IO no dudes en visitar el Foro sobre Java IO.
Imagen CAPTCHA CAPTCHA Audio
Refrescar imagen