Hallo zusammen und ein Frohes neues Jahr,
ich möchte auch mal um Eure Hilfe bitten:
Ich habe unter anderem ein Parameter-Textfile, welches so aufgebaut ist:
[Label01]
Parameter 1 = Text
Parameter 2 = Text
Parameter 3 = Text
[Label02]
Parameter 1 = Text
[Label03]
Parameter 1 = Text
Parameter 20 = Text
Parameter 30 = Text
Die Label und Parameter sind jetzt nur exemplarisch, sind aber eindeutig.
Die Parameter sind teils eindeutig, aber einige wiederholen sich auch unterhalb der verschiedenen Labels.
Jetzt möchte ich diese Textzeile zeilenweise einlesen und die Werte in einem JFrame anzeigen.
Das JFrame habe ich in der Hauptklasse erzeugt und wollte nun "ordentlich" Klassen für die einzelnen Funktionen erstellen.
In der Hauptklasse habe ich folgende Methode:
In der aufgerufenen Klasse habe ich folgendes gemacht:
Ist das so sauber programmiert ?
Was da eingelesen werden soll, sind so 250 Parameter.
- schreibt mal alle Werte in Variablen und die Hautklasse liest diese aus und überträgt sie ins JFrame
- oder sollte die aufgerufene Klasse das JFrame direkt füllen ? Brauche ich dann überhaupt so viele Variablen ?
- Wenn das so gemacht wird, ist das ok, das man direkt auf die Variablen zugreift oder erstellt man für diese Menge an Variablen Gettermethoden ?
LG, stehohrhase
ich möchte auch mal um Eure Hilfe bitten:
Ich habe unter anderem ein Parameter-Textfile, welches so aufgebaut ist:
[Label01]
Parameter 1 = Text
Parameter 2 = Text
Parameter 3 = Text
[Label02]
Parameter 1 = Text
[Label03]
Parameter 1 = Text
Parameter 20 = Text
Parameter 30 = Text
Die Label und Parameter sind jetzt nur exemplarisch, sind aber eindeutig.
Die Parameter sind teils eindeutig, aber einige wiederholen sich auch unterhalb der verschiedenen Labels.
Jetzt möchte ich diese Textzeile zeilenweise einlesen und die Werte in einem JFrame anzeigen.
Das JFrame habe ich in der Hauptklasse erzeugt und wollte nun "ordentlich" Klassen für die einzelnen Funktionen erstellen.
In der Hauptklasse habe ich folgende Methode:
Java:
private void jButton1ActionPerformed(ActionEvent evt) {
Parameter p = new Parameter(); //Klasse Parameter aufrufen
jTextField1.setText(p.identity[0]); //Werte aus Klasse Parameter in
jTextField2.setText(p.identity[1]); //JFrame eintragen
jTextField3.setText(p.identity[2]);
In der aufgerufenen Klasse habe ich folgendes gemacht:
Java:
public class Parameter {
String activeParameter = "N/A";
String strLine;
String [] identity = new String[4];
String [] wparameter = new String[4];
{
//Datei öffnen
try {
FileInputStream fstream = new FileInputStream("c:/test/Chip.ini");
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
//Datei zeilenweise einlesen
while ((strLine = br.readLine()) != null) {
if (strLine.startsWith ("[")) {
activeParameter = strLine;
}
//Datei interpretieren, bei Übereinstimmung von Label und Parameter -> Methode aufrufen
if (activeParameter.contains("[Label01]") & strLine.contains("Parameter 1")) {
parseidentity(0);
}
if (activeParameter.contains("[Label01]") & strLine.contains("Parameter 2")) {
parseidentity(1);
}
if (activeParameter.contains("[Label01]") & strLine.contains("Parameter 3")) {
parseidentity(2);
}
if (activeParameter.contains("[Label02]") & strLine.contains("Parameter 1")) {
parseweitereParameter(1);
}
}
//Datei schliessen
in.close();
} catch (Exception e){//Catch exception if any
System.err.println("Error: " + e.getMessage());
}
}
// Hier trenne splitte ich am "=" Zeichen, verwerfe Leerzeichen und schreibe in die Variable
void parseidentity(int i) {
String[] split = strLine.split("=");
identity[i] = split[1];
identity[i] = identity[i].trim();
}
void parseweitereParameter(int i) {
String[] split = strLine.split("=");
wparameter[i] = split[1];
wparameter[i] = wparameter[i].trim();
}
}
Ist das so sauber programmiert ?
Was da eingelesen werden soll, sind so 250 Parameter.
- schreibt mal alle Werte in Variablen und die Hautklasse liest diese aus und überträgt sie ins JFrame
- oder sollte die aufgerufene Klasse das JFrame direkt füllen ? Brauche ich dann überhaupt so viele Variablen ?
- Wenn das so gemacht wird, ist das ok, das man direkt auf die Variablen zugreift oder erstellt man für diese Menge an Variablen Gettermethoden ?
LG, stehohrhase