Autor
|
Tema: Ficheros, intento copiar el contenido de un archivo a otro (Leído 5,064 veces)
|
marixxaa
Desconectado
Mensajes: 6
|
Hola soy nueva!, disculpen si no me se explicar bien, pero estoy intentando copiar el contenido de un archivo de texto a otro nuevo, dicho contenido es el siguiente: a,b,c d,e,f sCadena contiene cada linea del archivo txt que deseo copiar. y luego a sCadena lo quiero separar en tokens en un array, el problema es que el siguiente codigo devuelve: a,b,c ,d,e,f , cuando lo que yo deseo es que lo copie tal cual como estaba a,b,c d,e,f Gracias, y espero respuestas (aunque no se si me explique bien). while ((sCadena = bf.readLine())!=null) { String []tokens=sCadena.split(","); for (int x=0; x<tokens.length; x++) {
if(x<2) salidaCopia.format(tokens[x]+","); if(x==2){ salidaCopia.format("tokens[x]+"\n\r\n"); }
|
|
|
En línea
|
|
|
|
0xFer
Desconectado
Mensajes: 400
|
Hola, ¿puedes publicar el código del método format? o publica todo si no es mucho. Hola soy nueva! Bienvenida!
|
|
« Última modificación: 19 Enero 2016, 03:46 am por 0xFer »
|
En línea
|
int getRandomNumber(){ return 4; //chosen by fair dice roll //guaranteed to be random }
|
|
|
marixxaa
Desconectado
Mensajes: 6
|
Hola, ¿puedes publicar el código del método format? o publica todo si no es mucho. Bienvenida! Gracias. No se si esto te sirve BufferedReader bf = null; BufferedReader bf1 = null; BufferedReader bf3 = null; try { bf = new BufferedReader(new FileReader("Altas.txt")); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } try { salidaCopia= new Formatter("Altas2.txt"); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }
|
|
|
En línea
|
|
|
|
0xFer
Desconectado
Mensajes: 400
|
No, mejor publica todo
|
|
|
En línea
|
int getRandomNumber(){ return 4; //chosen by fair dice roll //guaranteed to be random }
|
|
|
marixxaa
Desconectado
Mensajes: 6
|
No, mejor publica todo ok pero es un desastre esto, a penas estoy empezando a programar en java package Programa; import java.awt.Component; import java.awt.FlowLayout; // especifica cómo se van a ordenar los componentes import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; import java.util.Formatter; import java.util.Scanner; import java.util.StringTokenizer; import javax.swing.JFrame; // proporciona las características básicas de una ventana import javax.swing.JLabel; // muestra texto e imágenes import javax.swing.JList; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JPasswordField; import javax.swing.JRadioButton; import javax.swing.JScrollPane; import javax.swing.JTextField; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JComboBox; public class Marco extends JFrame { private GridBagLayout esquema; private GridBagConstraints restricciones; private JButton ingresar; private JButton modificar; private JTextField nombre; private JTextField apellido; private JTextField dni; private JLabel nombreLabel; private JLabel apellidoLabel; private JLabel dniLabel; private JLabel vacio; private String nombreVar; private String apellidoVar; private String dniVar; private Formatter salida; private Formatter salidaCopia; JLabel jUserName = new JLabel("Usuario"); JTextField userName = new JTextField(); JLabel jPassword = new JLabel("Password"); JTextField password = new JPasswordField(); Object[] ob = {jUserName, userName, jPassword, password}; public Marco () { esquema=new GridBagLayout(); setLayout(esquema); restricciones=new GridBagConstraints(); JMenu archivo=new JMenu ("Archivo"); JMenu altas=new JMenu ("Altas"); JMenuItem crearNuevoArchivo= new JMenuItem ("Crear nuevo archivo"); JMenuItem salir= new JMenuItem ("Salir"); JMenuItem altaEmpleado= new JMenuItem ("Empleado"); nombre = new JTextField("",10); apellido = new JTextField("",10); dni = new JTextField("",10); nombreLabel = new JLabel("Nombre"); apellidoLabel = new JLabel("Apellido"); dniLabel = new JLabel("Dni"); ingresar= new JButton("INGRESAR"); modificar= new JButton("MODIFICAR"); vacio=new JLabel(" "); nombre.setVisible(false); modificar.setVisible(false); apellido.setVisible(false); dni.setVisible(false); nombreLabel.setVisible(false); apellidoLabel.setVisible(false); dniLabel.setVisible(false); ingresar.setVisible(false); archivo.add(crearNuevoArchivo); archivo.add(salir); altas.add(altaEmpleado); JMenuBar barra=new JMenuBar(); setJMenuBar(barra); barra.add(archivo); Oyente oyente =new Oyente(); barra.add(altas); altaEmpleado.addActionListener( new ActionListener() { public void actionPerformed (ActionEvent evento){ nombre.setVisible(true); apellido.setVisible(true); dni.setVisible(true); nombreLabel.setVisible(true); apellidoLabel.setVisible(true); dniLabel.setVisible(true); ingresar.setVisible(true); modificar.setVisible(true); } } ); modificar.addActionListener( new ActionListener() { public void actionPerformed (ActionEvent evento){ String sCadena; String linea; String Cadena; String Cadena1; String Cadena2; String sCadena3; BufferedReader bf = null; BufferedReader bf1 = null; BufferedReader bf3 = null; try { bf = new BufferedReader(new FileReader("Altas.txt")); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } try { salidaCopia= new Formatter("Altas2.txt"); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { while ((sCadena = bf.readLine())!=null) { //System.out.print(sCadena); String []tokens=sCadena.split(","); for (int x=0; x<tokens.length; x++) { if (x>=3) x=10; // System.out.println(tokens[x]); System.out.println(tokens.length); if(tokens[x].equals("a")) tokens[x]="*"; // System.out.println("maria se encontro"); // Cadena=tokens[x]; if(x<2) salidaCopia.format(tokens[x]+","); if(x==2){ salidaCopia.format(tokens[x]+"\n\r\n"); } //x=0,1,2 // a,b,c } // salidaCopia.format("\n\r\n"); //System.out.print(tokens[1]); //System.out.print(tokens[1]); //System.out.print(tokens[2]); //salidaCopia.close(); // salidaCopia.format(tokens[0]+","+tokens[1]+","+tokens[2]); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { // ... cleanup that will execute whether or not an error occurred ... }
salidaCopia.close();
//x=0,1,2 // a,b,c
try { salida= new Formatter("Altas.txt"); }catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { bf3 = new BufferedReader(new FileReader("Altas2.txt")); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } try { while ((sCadena3 = bf3.readLine())!=null) { //System.out.print(sCadena); String []tokens=sCadena3.split(","); for (int x=0; x<tokens.length; x++) { System.out.printf("dd%d",x); if(x==3) x=10; if(x<2) salida.format(tokens[x]+","); if(x==2){ //salida.format(tokens[x]+"\n\r\n"); salida.format(tokens[x]+"\n\r\n"); } //x=0,1,2 // a,b,c } // salidaCopia.format("\n\r\n"); //System.out.print(tokens[1]); //System.out.print(tokens[1]); //System.out.print(tokens[2]); //salidaCopia.close(); // salidaCopia.format(tokens[0]+","+tokens[1]+","+tokens[2]); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { // ... cleanup that will execute whether or not an error occurred ... } salida.close(); } // salidaCopia.format("\n\r\n"); //System.out.print(tokens[1]); //System.out.print(tokens[1]); //System.out.print(tokens[2]); //salidaCopia.close(); // salidaCopia.format(tokens[0]+","+tokens[1]+","+tokens[2]);
} ); ingresar.addActionListener(oyente); crearNuevoArchivo.addActionListener( new ActionListener() { String userNameValue; String passwordValue; public void actionPerformed (ActionEvent evento){ int result = JOptionPane.showConfirmDialog(null, ob, "Se requiere autorizacion de ADMIN", JOptionPane.OK_CANCEL_OPTION); if (result == JOptionPane.OK_OPTION) { userNameValue = userName.getText(); passwordValue = password.getText(); //Here is some validation code } if(!passwordValue.equals("abc")&&(!userNameValue.equals("admin"))){ JOptionPane.showMessageDialog(null, "Acceso: DENEGADO"); } if (passwordValue.equals("abc")&&(userNameValue.equals("admin"))){ JOptionPane.showMessageDialog(null, "Acceso: CONFIRMADO"); try { salida= new Formatter("Altas.txt"); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { salidaCopia= new Formatter("Altas2.txt"); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } ); restricciones.fill=GridBagConstraints.VERTICAL; agregarComponente(nombre,0,0,1,1); agregarComponente(apellido,1,0,1,1); agregarComponente(dni,2,0,1,1); agregarComponente(nombreLabel,0,1,1,1); agregarComponente(apellidoLabel,1,1,1,1); agregarComponente(dniLabel,2,1,1,1); agregarComponente(vacio,0,2,1,1); agregarComponente(ingresar,0,3,1,1); agregarComponente(modificar,1,3,1,1); } private void agregarComponente(Component componente, int fila, int columna, int anchura,int altura) { restricciones.gridx=columna; restricciones.gridy=fila; restricciones.gridwidth=anchura; restricciones.gridheight=altura; esquema.setConstraints(componente,restricciones ); add(componente); } public class Oyente implements ActionListener { public void actionPerformed (ActionEvent evento) { String sCadena; String linea; String Cadena; BufferedReader bf = null; /* try { bf = new BufferedReader(new FileReader("Altas.txt")); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } try { salidaCopia= new Formatter("Altas2.txt"); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } */ FileWriter fichero = null; PrintWriter pw = null;
try { fichero = new FileWriter("Altas.txt",true); pw = new PrintWriter(fichero); int i = 0; nombreVar=nombre.getText(); apellidoVar=apellido.getText(); dniVar=dni.getText(); if(!nombreVar.equals("0")) pw.print(nombreVar+","+apellidoVar+","+dniVar+"\n\r\n"); fichero.close(); //pw.println("Linea " + i); } catch (Exception e) { e.printStackTrace(); } finally { // Nuevamente aprovechamos el finally para // asegurarnos que se cierra el fichero. if (null != fichero) //fichero.close(); try { } catch (Exception e2) { e2.printStackTrace(); } } /* nombreVar=nombre.getText(); apellidoVar=apellido.getText(); dniVar=dni.getText(); if(!nombreVar.equals("0")) salida.format(nombreVar+","+apellidoVar+","+dniVar+"\n\r\n"); salidaCopia.format(nombreVar+","+apellidoVar+","+dniVar+"\n\r\n"); */ //salida.format(nombreVar+"\n"); if(nombreVar.equals("0")){ //System.out.print("0"); //salida.close(); } /* try { while ((sCadena = bf.readLine())!=null) { linea=sCadena; System.out.println(sCadena); String[]tokens=sCadena.split(","); //System.out.println(sCadena); System.out.println(tokens[0]); System.out.println(tokens[1]); System.out.println(tokens[2]); if(tokens[1].equals("Ordones")){ tokens[1]="Ordename"; System.out.print("seee"); } salidaCopia.format(tokens[0]+","+tokens[1]+","+tokens[2]+"\n\r\n"); } salidaCopia.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }*/ } } } /* JFrame winMain = new JFrame("Mostrar / Ocultar Jpanel"); winMain.setVisible(true); winMain.setSize( 400, 400 ); winMain.setDefaultCloseOp eration(JFrame.EXIT_ON_CLOSE); */ //System.out.print(nombreVar); /**************ESTO SIRVE PARA COPIAR TODO UN ARCHIVO A OTRO********************** StringTokenizer defaultTokenizer = new StringTokenizer(linea); while (defaultTokenizer.hasMoreTokens()) { defaultTokenizer.nextElement(); salidaCopia.format(defaultTokenizer.nextToken()+"\n\r"); salidaCopia.format("\n\r"); } */
|
|
« Última modificación: 19 Enero 2016, 04:07 am por marixxaa »
|
En línea
|
|
|
|
0xFer
Desconectado
Mensajes: 400
|
Tu código es muy difícil de leer, te recomiendo utilizar la indentación porque la verdad yo no entendí nada. Te dejo una solución al problema que planteas: try{ /*Archivo a leer*/ File fileLectura = new File("Altas.txt"); /*Archivo a escribir*/ /*Leer y escribir*/ while((cadena = bf.readLine())!=null){ String[] letras = cadena. split(","); for( int i = 0; i < letras.length;i++){ if( i != (letras.length - 1) ) CadenaSal += letras[i] + ","; else CadenaSal += letras[i]; } pw.println(CadenaSal); } bf.close(); pw.close(); } IOErr.printStackTrace(); }
|
|
|
En línea
|
int getRandomNumber(){ return 4; //chosen by fair dice roll //guaranteed to be random }
|
|
|
marixxaa
Desconectado
Mensajes: 6
|
Tu código es muy difícil de leer, te recomiendo utilizar la indentación porque la verdad yo no entendí nada. Te dejo una solución al problema que planteas: try{ /*Archivo a leer*/ File fileLectura = new File("Altas.txt"); /*Archivo a escribir*/ /*Leer y escribir*/ while((cadena = bf.readLine())!=null){ String[] letras = cadena. split(","); for( int i = 0; i < letras.length;i++){ if( i != (letras.length - 1) ) CadenaSal += letras[i] + ","; else CadenaSal += letras[i]; } pw.println(CadenaSal); } bf.close(); pw.close(); } IOErr.printStackTrace(); }
muchisimas gracias! perdón soy muy vaga para acomodar el codigo, ahora pruebo el codigo que me mandaste, gracias!!!!!
|
|
|
En línea
|
|
|
|
marixxaa
Desconectado
Mensajes: 6
|
Funciono!!! te lo re agradezco. Pase todo el día con esto y vos me lo solucionaste, un genio, abrazo.
|
|
|
En línea
|
|
|
|
0xFer
Desconectado
Mensajes: 400
|
De nada . Me gusta tu esfuerzo, la verdad muchos llegan aquí pidiendo ayuda pero ni siquiera lo intentan, al ver tu código decidí ayudarte con mucho gusto
|
|
|
En línea
|
int getRandomNumber(){ return 4; //chosen by fair dice roll //guaranteed to be random }
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
copiar contenido de un archivo
Programación Visual Basic
|
brako
|
3
|
2,195
|
2 Enero 2006, 18:18 pm
por brako
|
|
|
Copiar contenido archivo PHP
PHP
|
Castg!
|
4
|
6,347
|
15 Noviembre 2009, 04:57 am
por Castg!
|
|
|
Copiar contenido del fichero en otro en C (solucionado)
« 1 2 »
Programación C/C++
|
Pirata LOL
|
13
|
38,588
|
29 Septiembre 2018, 19:31 pm
por Pol23
|
|
|
copiar toda el contenido de la memoria ram a un archivo
GNU/Linux
|
p4nd4criss
|
1
|
6,245
|
28 Junio 2012, 22:38 pm
por peib0l
|
|
|
Ver donde acaba archivo contenido en otro archivo
Ingeniería Inversa
|
lucaslopez0000
|
3
|
3,283
|
1 Febrero 2013, 19:31 pm
por apuromafo CLS
|
|