Hi,
Hab nach mehrmaligen Troubleshooting mein Modul programmieren können. Es geht hier darum, eine gewünschte Text-Datei,in welche Daten mit ; getrennt sind und schliesslich in meiner JTable importiert werden. Ich möchte eben diese Daten angezeigt haben. Nun das Programm läuft so ohne Probleme und Fehler ab, also keine syntaktische oder semantische Issues, aber irgendwie werden die Daten nicht importiert. Könnte mal ein Experte reinschauen, wo der Hund begraben ist? Wäre voll cool......
Hier mein Code - Klasse FileHandler:
und ein Auszug aus meiner Analyse Klasse:
Ich bin schon fast am Höhepunkt der Verzweiflung.. das Programm läuft schön ab. Vielleicht kann das ja jemand bei Euch selber testen, gibt mir Bescheid wenn ich mal die 2 Files schicken soll. Hoffentlich kann mir jemand so rasch als möglich helfen, ich muss , dieses kleine Modul (Datei-Funktion) sehr bald abgeben.
Thanks für die Hilfe.
Gruss
Rob
Hab nach mehrmaligen Troubleshooting mein Modul programmieren können. Es geht hier darum, eine gewünschte Text-Datei,in welche Daten mit ; getrennt sind und schliesslich in meiner JTable importiert werden. Ich möchte eben diese Daten angezeigt haben. Nun das Programm läuft so ohne Probleme und Fehler ab, also keine syntaktische oder semantische Issues, aber irgendwie werden die Daten nicht importiert. Könnte mal ein Experte reinschauen, wo der Hund begraben ist? Wäre voll cool......
Hier mein Code - Klasse FileHandler:
Code:
public class FileHandler extends JFrame {
//Variablen deklarieren
private File file;
public Analyse importData;
/** es wird eine Instanz der Klasse FileHandler erzeugt */
public FileHandler() {
super("Datei Öffnen");
fileHandler();
setDefaultCloseOperation(EXIT_ON_CLOSE); //"Datei Öffnen" Fenster muss schliessbar sein
}
protected void fileHandler() {
final JFileChooser fc = new JFileChooser();
fc.setFileFilter( new FileFilter()
{
@Override public boolean accept( File f )
{
return f.isDirectory() ||
f.getName().toLowerCase().endsWith( ".csv" );
}
@Override public String getDescription()
{
return ".csv";
}
} );
int state = fc.showOpenDialog( null );
if ( state == JFileChooser.APPROVE_OPTION )
{
//file = new File(pFile);
file = fc.getSelectedFile(); //Datei wird selektiert
importData = new Analyse(); //hier wird eine Instanz des Objekts Analyse auf meine importData Membervariable erzeugt, wird benötigt um meine wichtige read-Methode aufzurufen!
importData.readData(file); //Daten-Import in die Tabelle
}
else
System.out.println( "Auswahl abgebrochen" );
}
}
und ein Auszug aus meiner Analyse Klasse:
Code:
public void dataLoad() {
......
...
//Konstruktion der Tabellenstruktur als Vektor - statische Spalten werden beschrieben, um die Daten in die entsprechenden Spalten einzuordnen
input = new Vector();// #### in diesem Vector speichern
String columnNames[] = {"REF.NR", "DDS ID", "Gruppe", "Rechner", "Sequenz", "Datum/Uhrzeit", "Relative Zeit", "Störungsmeldung"};
Object rowData[][] = (Object[][])input.toArray( new Object[ input.size() ][] );
AnalyseDatenTable.setModel(new StringTableModel(rowData, columnNames));
//hier wird die das File-Dialog(JFileChooser) - Fenster gestartet, um die Datei auszuwählen
public void actionPerformed(java.awt.event.ActionEvent ev){
String cmd = ev.getActionCommand();
if (cmd.equals("Datei öffnen")) {
FileHandler openfile = new FileHandler(); //Objekt openfile aus der Klasse FileHandler erzeugen resp. instanzieren
}
}
//Die Read-Methode holt sich die Daten, welche vom Benutzer ausgewählt worden sind. Diese Methode referenziert auf die Klasse FileHandler,
// und wird auf das Objekt importData aufgerufen.
public void readData(File file){
if (file.exists()){
try {
BufferedReader eingabe = new BufferedReader(new FileReader(file)); //hier wird die //gewählte Datei als Stream-Ausgabe in die JTable übertragen
int gelesen;
String eingabezeile;
eingabezeile=eingabe.readLine(); //Die Textzeilen werden gelesen und die Tabellenzeilen eingegeben
//input = new Vector(); // #### in diesem Vector speichern
while( eingabezeile != null )
{
StringTokenizer token= new StringTokenizer (eingabezeile);
String[] felder =eingabezeile.split(";");
/*
Vector row = new Vector();
for (int i=0;i<felder.length;i++){
row.addElement(felder[i]);
}
*/
StringBuffer text =new StringBuffer(10);
input.add( felder );
eingabezeile=eingabe.readLine();
}
/*
Object rowData[][] = (Object[][])input.toArray( new Object[ input.size() ][] );
Arrays.sort(rowData,1,890,new NameCoperator());
String columnNames[] = {"Datum/Uhrzeit", "FLG", "Störungsmeldung"};
table.setModel( new StringTableModel( rowData, columnNames ));
*/
}
catch (FileNotFoundException ex) {
ex.printStackTrace( );
}
catch( IOException ex ){
ex.printStackTrace();
}
}
}
Ich bin schon fast am Höhepunkt der Verzweiflung.. das Programm läuft schön ab. Vielleicht kann das ja jemand bei Euch selber testen, gibt mir Bescheid wenn ich mal die 2 Files schicken soll. Hoffentlich kann mir jemand so rasch als möglich helfen, ich muss , dieses kleine Modul (Datei-Funktion) sehr bald abgeben.
Thanks für die Hilfe.
Gruss
Rob
Zuletzt bearbeitet: