Java - mi Jtable guarde mis datos en un archivo .txt o excel y que al abrir, el programa lea lo guardado

   
Vista:

mi Jtable guarde mis datos en un archivo .txt o excel y que al abrir, el programa lea lo guardado

Publicado por Jorge jgagoes@gmail.com (2 intervenciones) el 16/06/2014 06:53:45
Necesito ayuda, porfavor necesito que mis datos guardados en mi jtable se guarden en un archivo .Txt o en un excel, y que al abrir el programa los datos que guarde en mi archivo aparezcan al momento. Para ingresar mis datos estoy utilizando unos Jtextfield que se muestran en un Jtable con el boton grabar, pero nose si los estoy leyendo bien, necesito ayuda porfavor Programadores :D (necesito un sistema facil). gracias :D





package proyecto;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.text.DecimalFormat;
import java.util.StringTokenizer;
import javax.swing.JOptionPane;
import javax.swing.JRootPane;
import javax.swing.table.DefaultTableModel;

public class FrProductos extends javax.swing.JFrame {
DefaultTableModel ModeloTabla;
String data[][]={} ;
String cabecera[]={"N°","Producto","Cantidad","Precio","Codigo" };
int NumProducto;
public FrProductos() {
initComponents();
this.setLocationRelativeTo(null);
ModeloTabla= new DefaultTableModel(data,cabecera);
jTblMostrar.setModel(ModeloTabla);
NumProducto=0;

}

private void jBtnGrabarActionPerformed(java.awt.event.ActionEvent evt) {
DecimalFormat df2= new DecimalFormat("0.00");
String producto=jTxtProducto.getText();
String codigo=jTxtCodigo.getText();
int cantidad=Integer.parseInt(jTxtCantidad.getText());
double precio=Double.parseDouble(jTxtPrecio.getText());

Object datos[]={NumProducto++, producto, cantidad, precio, codigo};
try
{
FileWriter x=new FileWriter("C:/Jorge/Productos.csv",true);
PrintWriter y=new PrintWriter(x);
y.println(NumProducto+","+producto+","+cantidad+","+precio+","+codigo);

y.close();

}
catch(Exception z)
{
JOptionPane.showMessageDialog(this,"Error: "+z);
}
ModeloTabla.addRow(datos);
jTxtCantidad.setText("");
jTxtCodigo.setText("");
jTxtPrecio.setText("");
jTxtProducto.setText("");
jTxtProducto.requestFocus();

}


private void jBtnEliminarActionPerformed(java.awt.event.ActionEvent evt) {
int filaseleccionada= jTblMostrar.getSelectedRow();
if (filaseleccionada>=0){
ModeloTabla.removeRow(filaseleccionada);
}
else {
JOptionPane.showMessageDialog(null, "Tabla vacia o no selecciono fila");
}
}

private void formWindowOpened(java.awt.event.WindowEvent evt) {
try
{
FileReader a= new FileReader("C:/Jorge/Productos.txt");
BufferedReader b= new BufferedReader(a);
String linea;
linea=b.readLine();

while(linea!=null)
{
StringTokenizer st= new StringTokenizer(linea, ",");

String producto=st.nextToken();
String codigo=st.nextToken();
int cantidad=Integer.parseInt(st.nextToken());
double precio=Double.parseDouble(st.nextToken());
Object datos[]={NumProducto++, producto, cantidad, precio, codigo};



linea=b.readLine();
}
b.close();
}
catch(Exception ex)
{
JOptionPane.showMessageDialog(this,"Error: " +ex);
}
}


});
}
// Variables declaration - do not modify
private javax.swing.JButton jBtnEliminar;
private javax.swing.JButton jBtnGrabar;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTblMostrar;
private javax.swing.JTextField jTxtCantidad;
private javax.swing.JTextField jTxtCodigo;
private javax.swing.JTextField jTxtPrecio;
private javax.swing.JTextField jTxtProducto;
// End of variables declaration
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder