Software Guru Conference & Expo 2014

como generar un archivo txt en java

mi asunto es que tengo dos jtextfield y tengo un jbutton que se llama agregar, mi duda es como puedo guardar la informacion en un archivo de texto.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de benek

Writers

Tienes que ocupar la clase java.io.FileWriter, con ella creas un nuevo archivo y lo escribes con su método write();

Si vas a escribir constantemente en el archivo (que seguramente será el caso) es mejor que adicionalmente ocupes la clase java.io.BufferedWriter, ya que FileWriter por si solo escribe directamente al archivo cada que ocupas el método write(), y BufferedWriter crea un buffer para almacenar suficiente texto a escribir y optimiza los accesos a disco. De hecho esta es la opción más recomendable.

No olvides que una vez que hayas escrito lo que necesitas debes cerrar tu FileWriter y BufferedWriter.

Saludos!

tengo un problema al momento de crear el archivo

mira tengo este codigo, que es un metodo q mando al JFileChooser para guardar un txt con cualquier nombre pero no se que hacer.

private void saveFile (File file)
{

BufferedWriter bufferedWriter = null;

try {

//Construct the BufferedWriter object
bufferedWriter = new BufferedWriter(new FileWriter(file));

//Start writing to the output stream
bufferedWriter.write(txt1.getText());
bufferedWriter.newLine();
bufferedWriter.write(txt2.getText());

} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
} finally {
//Close the BufferedWriter
try {
if (bufferedWriter != null) {
bufferedWriter.flush();
bufferedWriter.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}

}

Imagen de bonfil1

Con esto

import java.util.*;
import java.io.FileNotFoundException;
import java.io.PrintStream;

public class generador {

        static Scanner miscaner = new Scanner (System.in);
        static int cantidad;
        static double precio, total;
       
        public static void main(String[] args)throws FileNotFoundException{
       
                PrintStream DDescritor = new PrintStream("Resultados.txt");
               
                System.out.print("Ahora introduce la cantidad del producto? ");
                cantidad = miscaner.nextInt();
                System.out.print("Ahora introduce el precio del producto? ");
                precio = miscaner.nextDouble();
                System.out.print("Ahora los resultados seran utgenerados en un archivo .txt");
               
                total = cantidad * precio;
               
                DDescritor.println("Cantidad\tPrecio");
                DDescritor.print(cantidad);
                DDescritor.print("\t");
                DDescritor.println(precio);
                DDescritor.println("En total tienes: "+total);
        }

}

hola... lo he hecho esto con

hola... lo he hecho esto con FileWriter y BufferedWriter pero quisiera saber como hacerle para que no sobreescriba lo guardado sino que lo agregue ?

Imagen de ezamudio

FileWriter

FileWriter tiene un constructor que recibe un boolean indicando si debe sobreescribir el archivo (en caso que exista) o si debe escribir al final del archivo.

//Esto crea el archivo o lo sobreescribe si ya existia
new FileWriter("/tmp/caca");
//Esto abre el archivo y conserva su contenido, agregando datos al final del mismo
new FileWriter("/tmp/caca", true);

ayuda para crear archivo de txt

hola tengo un problema para crear un archivo: Mi problema es que al agregar datos al archivo de agrega en la misma linea yo quiero
que cuando agrego un dato me agrege en la siguiente linea y no en la misma. ejemplo

hola mundo
hola mundo2

este es mi codigo:
try {
File outFile = new File("C:\\archivoSalida.txt");
BufferedWriter writer = new BufferedWriter(new FileWriter(outFile));

writer.write("HOLA MUNDO2");
writer.newLine(); // Esto es un salto de linea

writer.close();
} catch (IOException e) {
System.err.println(e);
System.exit(1);
}

}

Imagen de JaimeItlzc

System.getProperty("line.separator")

static final String ln = System.getProperty("line.separator");
writer.write("HOLA MUNDO2",ln);

Saludos.

hola gracias por leer mi

hola gracias por leer mi pregunta sabes intente con el codigo pero me sale un error no se si estoy colocando el codigo correcto.
try {
File outFile = new File("C:\\archivoSalida.txt");
BufferedWriter writer = new BufferedWriter(new FileWriter(outFile));

static final String ln = System.getProperty("line.separator");

writer.write("HOLA MUNDO2"+ln);
//writer.write("HOLA MUNDO2");
//writer.newLine(); // Esto es un salto de linea

writer.close();
} catch (IOException e) {
System.err.println(e);
System.exit(1);
}

}

Imagen de luxspes

RTFS: Cual error exactamente?

hola gracias por leer mi pregunta sabes intente con el codigo pero me sale un error no se si estoy colocando el codigo correcto

Lee el mensaje de error y su stacktrace, y si no le entiendes, pues copiala y pegala aqui en el foro, por favor no digas nada mas "me sale un error", asi no se te puede ayudar.

Imagen de francisco.santiagoj

@lucas

Hola Lucas,

Viendo tu fragmento de código, veo que colocaste mal la sugerencia de JaimeItlzc, el dijo:
writer.write("HOLA MUNDO2",ln);
Y tu pusiste:
writer.write("HOLA MUNDO2"+ln);
Intenta cambiar el + por la coma y cuéntanos si te funciono.

NOTA: coloca tu codigo entre las etiquetas  <code> < / code> para que sea mas legible.

Saludos

Imagen de ezamudio

static

Seguro su error es de compilación porque está declarando una variable static dentro de un método.

a mi me interesa guardar

a mi me interesa guardar pero como pdf, si alguien me puede ayudar se lo agradeceria mucho lo estoy implementando en un editor de texto
y no le ayo como implementarlo, sera me pueden echar una ayudadita

consulta urgente

hola amigo, un favor, necesito que me ayudes con eso, me han dejado en el trabajo un problema muy parecido, en donde tengo que monitorear un archivo, en ese caso ver su fecha y hora de moificacion y luego enviar este dato a un archivo txt y que valla grabando ahi, esto es lo que he logrado armar hasta ahora y como tu mencionas me sale un error por el STATIC, como lo podria solucionar. Gracias de antemano

package pruebaGuardar;

import java.io.*;
import java.text.DateFormat;
import java.util.Date;
import java.io.FileWriter;
import java.io.BufferedWriter;
import java.util.ArrayList;

class FileStatistics {
         public static void main(String[] agrs)
          {
                File f1 = new File("C:\\archivoEntrada.txt");
                File outFile = new File("C:\\archivoSalida.txt");
            BufferedWriter writer = new BufferedWriter(new FileWriter(outFile));

                if (f1.exists())                                  //start if
                {
                  System.out.println(" ");
                  System.out.println("    The file name is : " + f1.getName());
                  System.out.println(" ");
                  System.out.println("    The files parent is : " + f1.getParent());
                  System.out.println(" ");
                  System.out.println("    The size of the file is : " + f1.length() + "kb");
                  System.out.println(" ");
                  System.out.println("    This document was last modified : " + f1.lastModified());
                  System.out.println(" ");
                 
                  writer.close();    
         
                }//end if
                else
                {//start else
                  System.out.println("The file does not exsit.");
                }//end else
               
                static  final String ln = System.getProperty("line.separator");
        writer.write("f1.lastModified()",ln);                           // Esto es un salto de linea

       
          }//end main
        }//end class

Imagen de OscarRyz

Lee el error, entiéndelo y

@EdiOner:

Lee el error, entiéndelo y resuelvelo.

Estoy seguro que el compilador te está diciendo, en que línea está el error y cual es, solo que quizá no entiendes lo que el compilador te dice.

Solo tienes que quitar una palabra ( al menos para que compile )

COMO HACER UN PROGRAMA

HOLA´´´´ soy principiante en esto de la programación..sera que alguien me puede ayudar a crear un programa en java..
que pueda leer un archivo caracter de caracteres y que pueda encontrar las palabras reservadas y pueda separar las palabras y que me diga cuantas palabras encontro.

xfavor les agradecere su ayuda,,,kien sea que me ayude a resolverlo.

Imagen de ezamudio

parser

O sea nomas un parser...

Deber

Hola no se si alguien me puede ayudar necesito hacer un programa en java de matriculacion de alumnos, este programa consiste en ingresar el nombre del alumno y el numero de matricula, teniendo en cuenta k tengo k ingresar los alumnos en diferntes carreras,.,.-,-,-, y despues ingresar el nombre del alumno y me tiene k devolver el numero de la matricula del alumno ingresado,.,.-,- hasta 10 alumno como ingreso gracias

Imagen de Livio

Café y galletitas?

Café y galletitas?