Dateien hochladen nach „model“
This commit is contained in:
parent
890373a1b6
commit
6184dd1daf
121
model/AdressverwaltungModel.java
Normal file
121
model/AdressverwaltungModel.java
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
|
||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package gui_adressverwaltung.model;
|
||||||
|
|
||||||
|
import java.io.BufferedInputStream;
|
||||||
|
import java.io.BufferedOutputStream;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.FileNotFoundException;
|
||||||
|
import java.io.FileOutputStream;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.ObjectInputStream;
|
||||||
|
import java.io.ObjectOutputStream;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import javax.swing.table.AbstractTableModel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author le
|
||||||
|
*/
|
||||||
|
public class AdressverwaltungModel extends AbstractTableModel
|
||||||
|
{
|
||||||
|
private ArrayList<ArrayList<String>> daten;
|
||||||
|
private ArrayList<String> adressEintraegeDaten;
|
||||||
|
private ArrayList<String> adressEintraegeNamen;
|
||||||
|
|
||||||
|
public AdressverwaltungModel()
|
||||||
|
{
|
||||||
|
adressEintraegeDaten = new ArrayList<>();
|
||||||
|
adressEintraegeNamen = new ArrayList<>();
|
||||||
|
daten = new ArrayList<>();
|
||||||
|
adressEintraegeNamen.add("Name");
|
||||||
|
adressEintraegeDaten.add("Lehner");
|
||||||
|
adressEintraegeNamen.add("Telefon");
|
||||||
|
adressEintraegeDaten.add("122345");
|
||||||
|
daten.add(adressEintraegeDaten);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getRowCount()
|
||||||
|
{
|
||||||
|
return daten.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getColumnCount()
|
||||||
|
{
|
||||||
|
return adressEintraegeDaten.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getValueAt(int row, int col)
|
||||||
|
{
|
||||||
|
return daten.get(row).get(col);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void setValueAt(Object value, int row, int col)
|
||||||
|
{
|
||||||
|
daten.get(row).set(col, (String)value);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isCellEditable(int row, int col)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getColumnName(int col)
|
||||||
|
{
|
||||||
|
return adressEintraegeNamen.get(col);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void eintragHinzufuegen()
|
||||||
|
{
|
||||||
|
adressEintraegeDaten = new ArrayList<>();
|
||||||
|
adressEintraegeNamen.forEach(s -> adressEintraegeDaten.add(s));
|
||||||
|
daten.add(adressEintraegeDaten);
|
||||||
|
this.fireTableDataChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void eintragLoeschen(int row)
|
||||||
|
{
|
||||||
|
daten.remove(row);
|
||||||
|
this.fireTableDataChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void spalteHinzufuegen(String name)
|
||||||
|
{
|
||||||
|
adressEintraegeNamen.add(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void datenSpeichern(File datei) throws FileNotFoundException, IOException
|
||||||
|
{
|
||||||
|
FileOutputStream fos = new FileOutputStream(datei);
|
||||||
|
BufferedOutputStream bos = new BufferedOutputStream(fos);
|
||||||
|
ObjectOutputStream oos = new ObjectOutputStream(bos);
|
||||||
|
oos.writeObject(daten);
|
||||||
|
oos.writeObject(adressEintraegeNamen);
|
||||||
|
oos.flush();
|
||||||
|
oos.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void datenLesen(File datei) throws FileNotFoundException, IOException, ClassNotFoundException
|
||||||
|
{
|
||||||
|
FileInputStream fis = new FileInputStream(datei);
|
||||||
|
BufferedInputStream bis = new BufferedInputStream(fis);
|
||||||
|
ObjectInputStream ois = new ObjectInputStream(bis);
|
||||||
|
daten = (ArrayList<ArrayList<String>>)ois.readObject();
|
||||||
|
adressEintraegeNamen = (ArrayList<String>)ois.readObject();
|
||||||
|
adressEintraegeDaten = daten.get(daten.size()-1);
|
||||||
|
ois.close();
|
||||||
|
this.fireTableDataChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user