Programacion. Registro y Lectura de datos de estudiantes
AdrestInforme18 de Julio de 2021
4.124 Palabras (17 Páginas)139 Visitas
UNIVERSIDAD NACIONAL TECNOLÓGICA DE LIMA SUR
FACULTAD DE INGENIERÍA Y GESTIÓN
INGENIERÍA DE SISTEMAS
[pic 1]
TEMA: EVIDENCIA CAPACIDAD 3
Registro y Lectura de datos de estudiantes
Curso: Lenguaje de Programación I
Docente: Blas Rebaza, Maruja Emelita
Alumno:
Granados Esteban, Adrián Eduardo
Villa María del Triunfo
2021
Introducción
El presente programa tiene como objetivo el registro de datos de varios estudiantes y también un listado; junto a eso se creará un archivo de texto que contendrá los datos ingresados.
Código:
Paquete evidencia3
Clase Alumno
package evidencia3;
public class Alumno {
//se crea los atributos de la clase Alumno
private String codigo;
private String nombre;
private String ape_pa;
private String ape_ma;
private String edad;
private String promedio;
//se crea el constructor
public Alumno(String codigo, String nombre, String ape_pa, String ape_ma, String edad, String promedio) {
this.codigo = codigo;
this.nombre = nombre;
this.ape_pa = ape_pa;
this.ape_ma = ape_ma;
this.edad = edad;
this.promedio = promedio;
}
//getter and setter
public String getCodigo() {
return codigo;
}
public void setCodigo(String codigo) {
this.codigo = codigo;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getApe_pa() {
return ape_pa;
}
public void setApe_pa(String ape_pa) {
this.ape_pa = ape_pa;
}
public String getApe_ma() {
return ape_ma;
}
public void setApe_ma(String ape_ma) {
this.ape_ma = ape_ma;
}
public String getEdad() {
return edad;
}
public void setEdad(String edad) {
this.edad = edad;
}
public String getPromedio() {
return promedio;
}
public void setPromedio(String promedio) {
this.promedio = promedio;
}}
Clase Proyecto
package evidencia3;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Proceso {
//se crea la funcion Archivo, la cual nos permitira
//crear el archivo txt
public void Archivo(Alumno a){
//uso del try y catch para control de errores
try {
//se hace una instancia y se coloca el nombre del archivo
//este ira al lugar de nuestro proyecto
FileWriter fw = new FileWriter("alumno.txt",true);
//se obtienen los atributos y estos se escribiran en el archivo de texto
fw.write(a.getCodigo()+","+a.getNombre()+","+a.getApe_pa()+","+a.getApe_ma()+","+
a.getEdad()+","+a.getPromedio()+"\n");
fw.close();
} catch (IOException ex) {
//mostrando mensaje si se obtiene algún error al momento de crear el txt
JOptionPane.showMessageDialog(null, "Error"+ex.getMessage());
}
}
//se crea un arraylist
public ArrayList <Alumno> leerArchivo(){
//se crea un arreglo
ArrayList <Alumno> alumnos = new ArrayList<>();
//se crea una variable
Alumno am;
try {
//leyendo mi archivo de texto creado
FileReader fr = new FileReader("alumno.txt");
BufferedReader br = new BufferedReader(fr);
//creando un arreglo para almacenar los datos separados por comas
String var[];
String cadena = br.readLine();
while(cadena!=null){
var = cadena.split(",");
//leyendo la siguiente fila del archivo de texto
cadena = br.readLine();
//asignando los datos a mi variable dat
am = new Alumno(var[0],var[1],var[2],var[3],var[4],var[5]);
alumnos.add(am);
}
} catch (IOException ex) {
JOptionPane.showMessageDialog(null,"Error"+ex.getMessage());
}
return alumnos;
}
}
Clase Interfaz
package evidencia3;
import java.util.ArrayList;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
public class Interfaz extends javax.swing.JFrame {
//creacion de objetos
Proceso p = new Proceso();
public Interfaz() {
initComponents();
}
//para limpiar los datos
public void limpiarDatos(){
txtcodigo.setText("");
txtnombre.setText("");
txtapepa.setText("");
txtapema.setText("");
txtedad.setText("");
txtprom.setText("");
}
void registrar(){
//obteniendo los datos ingresados en pantalla
String codigo =txtcodigo.getText();
String nombre = txtnombre.getText();
String ape_pa=txtapepa.getText();
String ape_ma=txtapema.getText();
String edad=txtedad.getText();
String promedio=txtprom.getText();
//creando objeto a de la clase Datos
Alumno ar = new Alumno(codigo, nombre, ape_pa, ape_ma, edad, promedio);
//creando mensaje de diálogo
p.Archivo(ar);
limpiarDatos();
JOptionPane.showMessageDialog(null, "Exito");
}
public void listar(){
//creando un arreglo para los títulos
String columnas[]={"Codigo","Nombre","Apellido Paterno","Apellido Materno","Edad","Promedio"};
//se crea un modelo para la tabla
DefaultTableModel tab = new DefaultTableModel(null,columnas);
tabla.setModel(tab);
//se crea un arreglo de datos el cual se asigna, esto a la clase proceso
ArrayList<Alumno> leer = p.leerArchivo();
//para visualizar los datos, se utilizara for
for (Alumno x: leer) {
tab.addRow(new Object[]{x.getCodigo(),x.getNombre(),x.getApe_pa(),
x.getApe_ma(),x.getEdad(),x.getPromedio()
});}}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
...