Hi Jungs,
Ich bin an einer JTable dran, die ich programmieren muss. Die JTable muss mit Informationen gefüttert werden, die in einem Txt-File., (später kommen dann auch csv. File) enthalten sind. Die Informationen sind zeilenweise und in 3 Spalten (Titel im File nicht vorhanden, deshalb werden sie im Code mitgegeben) geordnet! Meine Idee ist mit Vector() und hab diese auch so programmiert, ich erlaube mir meinen Code mal in diesem Forum zu posten und hoffe, dass ein Java-Erfahrener Programmierer mir hier behilflich ist! Das wäre total cool...
Hier mal mein Code:
Fehler: er kommt mit Exception-Fehler... welcher beim Vector ausgerufen wird
Again.. besten Dank für Euren Support! Super-Forum hier.. echt!
Grüess aus der Schweiz,
Rob
An Moderatoren: Sorry, hab mein Post im falschen Themengebiet geschrieben.. wäre es möglich mein Post in die Swing - Kategorie zu moven? Besten Dank.... entschuldigung..
Ich bin an einer JTable dran, die ich programmieren muss. Die JTable muss mit Informationen gefüttert werden, die in einem Txt-File., (später kommen dann auch csv. File) enthalten sind. Die Informationen sind zeilenweise und in 3 Spalten (Titel im File nicht vorhanden, deshalb werden sie im Code mitgegeben) geordnet! Meine Idee ist mit Vector() und hab diese auch so programmiert, ich erlaube mir meinen Code mal in diesem Forum zu posten und hoffe, dass ein Java-Erfahrener Programmierer mir hier behilflich ist! Das wäre total cool...
Hier mal mein Code:
Code:
*
* Analyse.java
*
* Created on 18. Juli 2007, 15:06
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package ch.sbb.P_OP_RM_RFT.DamoXP;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Arrays;
import java.util.StringTokenizer;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import java.text.Collator;
import java.util.Comparator;
/**
*
* @author rbadalam
*/
public class Analyse extends JFrame {
private JTable table;
/** Creates a new instance of Analyse */
public Analyse() {
super("Daten-Analyse DDS");
dataLoad();
read();
// String[] colTitle;
// colTitle = {"Datum/Uhrzeit", "FLG", "Störungstext"};
}
/** This method is called from within the constructor to
* initialize the form.
*/
//Komponenten innerhalb des JFrame erzeugen und Tabelle vorbereiten
public void dataLoad() {
jSeparator1 = new javax.swing.JSeparator();
jMenuBar2 = new javax.swing.JMenuBar();
jMenu2 = new javax.swing.JMenu();
jMenuBar3 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jScrollPane1 = new javax.swing.JScrollPane();
AnalyseDatenTable = new javax.swing.JTable();
AnalyseInformation = new javax.swing.JLabel();
AnalyseUmfeldDaten = new javax.swing.JLabel();
AnalyseLokNr = new javax.swing.JLabel();
jScrollPane4 = new javax.swing.JScrollPane();
ShowLokNr = new javax.swing.JTextArea();
jScrollPane2 = new javax.swing.JScrollPane();
jScrollPane5 = new javax.swing.JScrollPane();
AnalyseDatenInformation = new javax.swing.JTextArea();
jScrollPane7 = new javax.swing.JScrollPane();
AnalyseDatenUmfeldDaten = new javax.swing.JTextArea();
jMenuBar1 = new javax.swing.JMenuBar();
jMenu3 = new javax.swing.JMenu();
load = new javax.swing.JMenuItem();
jMenu4 = new javax.swing.JMenu();
jMenuItem2 = new javax.swing.JMenuItem();
jMenu2.setText("Menu");
jMenuBar2.add(jMenu2);
jMenu1.setText("Menu");
jMenuBar3.add(jMenu1);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowActivated(java.awt.event.WindowEvent evt) {
formWindowActivated(evt);
}
});
String columnNames[] = {"Datum/Uhrzeit", "FLG", "Störungsmeldung"}; //Hier die Spaltentitel
Object rowData[][] = (Object[][])input.toArray( new Object[ input.size() ][] );
AnalyseDatenTable.setModel(new DefaultTableModel(rowData, columnNames));
// Arrays.sort(rowData,1,890,new NameCoperator()); // diese Line wird momentan nicht gebraucht, brauche ich evtl. später um die Sortier/Filter-Methode zu programmieren
/*
new Object [][] {
{null, null, null},
{null, null, null},
{null, null, null},
{null, null, null}
},
*/
/*
new String [] {
"Datum/Uhrzeit", "FLG", "Störungsmeldung"
}
));
*/
jScrollPane1.setViewportView(AnalyseDatenTable);
AnalyseInformation.setText("Information");
AnalyseUmfeldDaten.setText("Umfelddaten");
AnalyseLokNr.setText("Lok - Nr:");
jScrollPane4.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
jScrollPane4.setVerticalScrollBarPolicy(javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER);
jScrollPane4.setHorizontalScrollBar(null);
jScrollPane4.setWheelScrollingEnabled(false);
ShowLokNr.setColumns(20);
ShowLokNr.setRows(5);
jScrollPane4.setViewportView(ShowLokNr);
AnalyseDatenInformation.setColumns(20);
AnalyseDatenInformation.setEditable(false);
AnalyseDatenInformation.setRows(5);
AnalyseDatenInformation.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusGained(java.awt.event.FocusEvent evt) {
AnalyseDatenInformationFocusGained(evt);
}
});
jScrollPane5.setViewportView(AnalyseDatenInformation);
jScrollPane2.setViewportView(jScrollPane5);
AnalyseDatenUmfeldDaten.setColumns(20);
AnalyseDatenUmfeldDaten.setEditable(false);
AnalyseDatenUmfeldDaten.setRows(5);
jScrollPane7.setViewportView(AnalyseDatenUmfeldDaten);
jMenu3.setText("Datei");
load.setText("Laden");
jMenu3.add(load);
jMenuBar1.add(jMenu3);
jMenu4.setText("Filtern");
jMenuItem2.setText("Sortieren");
jMenu4.add(jMenuItem2);
jMenuBar1.add(jMenu4);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(AnalyseInformation)
.addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 248, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(AnalyseUmfeldDaten)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 214, Short.MAX_VALUE))
.addComponent(jScrollPane7, javax.swing.GroupLayout.DEFAULT_SIZE, 275, Short.MAX_VALUE)))
.addGroup(layout.createSequentialGroup()
.addComponent(AnalyseLokNr)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 136, Short.MAX_VALUE)
.addGap(348, 348, 348))
.addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 529, Short.MAX_VALUE))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(44, 44, 44)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(jScrollPane4, 0, 14, Short.MAX_VALUE)
.addComponent(AnalyseLokNr, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 140, Short.MAX_VALUE)
.addGap(8, 8, 8)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(AnalyseInformation, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(AnalyseUmfeldDaten, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane7, javax.swing.GroupLayout.DEFAULT_SIZE, 115, Short.MAX_VALUE)
.addComponent(jScrollPane2))
.addContainerGap())
);
pack();
}// </editor-fold>
private void AnalyseDatenInformationFocusGained(java.awt.event.FocusEvent evt) {
// TODO add your handling code here:
}
private void formWindowActivated(java.awt.event.WindowEvent evt) {
// TODO add your handling code here:
}
// Variables declaration - do not modify
private javax.swing.JTextArea AnalyseDatenInformation;
private javax.swing.JTable AnalyseDatenTable;
private javax.swing.JTextArea AnalyseDatenUmfeldDaten;
private javax.swing.JLabel AnalyseInformation;
private javax.swing.JLabel AnalyseLokNr;
private javax.swing.JLabel AnalyseUmfeldDaten;
private javax.swing.JTextArea ShowLokNr;
private javax.swing.JMenu jMenu1;
private javax.swing.JMenu jMenu2;
private javax.swing.JMenu jMenu3;
private javax.swing.JMenu jMenu4;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuBar jMenuBar2;
private javax.swing.JMenuBar jMenuBar3;
private javax.swing.JMenuItem load;
private javax.swing.JMenuItem jMenuItem2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JScrollPane jScrollPane4;
private javax.swing.JScrollPane jScrollPane5;
private javax.swing.JScrollPane jScrollPane7;
private javax.swing.JSeparator jSeparator1;
Vector input; //die ist die Variable für den Vektor
// End of variables declaration
public void read(){
try {
BufferedReader eingabe = new BufferedReader(new FileReader("beispiel.txt")); //das TXT-file ist momentan als Beispiel innerhalb des Projektordners abgelegt!
int gelesen;
String eingabezeile;
eingabezeile=eingabe.readLine();
input = new Vector(); // #### in diesem Vector speichern
while( eingabezeile != null )
{
StringTokenizer token= new StringTokenizer (eingabezeile);
String[] felder =eingabezeile.split("\\|");
StringBuffer text =new StringBuffer(10);
input.add( felder );
eingabezeile=eingabe.readLine();
}
}
catch( IOException ex ){
ex.printStackTrace();
}
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Analyse().setVisible(true);
}
});
}
}
Fehler: er kommt mit Exception-Fehler... welcher beim Vector ausgerufen wird
Again.. besten Dank für Euren Support! Super-Forum hier.. echt!
Grüess aus der Schweiz,
Rob
An Moderatoren: Sorry, hab mein Post im falschen Themengebiet geschrieben.. wäre es möglich mein Post in die Swing - Kategorie zu moven? Besten Dank.... entschuldigung..
Zuletzt bearbeitet: