Sprachdateien und JTable

tabina

Mitglied
Hallo!

Ich möchte ein Tool schreiben, das ähnlich wie die Netbeans IDE properties Dateien für verschiedene Sprachen in einer Tabelle anzeigt, wobei die erste Spalte die Keys enthält und jede weitere Spalte einer Sprache entspricht und die zu den Keys gehörigen übersetzten Strings enthält.
Mit Hilfe dieses Tools soll der Benutzer die Spracheinstellungen/Übersetzungen seinen Wünschen entsprechend anpassen können.

Meine Frage ist nun, wie ich am Besten die verschiedenen Dateien in ein JTable lade.
Könnt ihr mir eine Vorgehensweise empfehlen? Gibt es vielleicht schon etwas, was ich nutzen könnte?

Danke und schönes Wochenende!

tabina
 
hallo tabina
Wenn ich Dich richtig verstehe möchtest Du ResourceBundles einlesen und für die Übersetzung gegenüberstellen.
Ich weiß jetzt nicht wie das in Netbeans aussieht, und ob Du mehr als 2 Sprachen nebeneinanderstellen möchtest.
Das Prinzip ist aber, dass Du das TableModel des Tables mit den Werten der resourceproperties fütterst, wobei Du den jeweiligen Schlüssel der Übersetzungen ebenso in die Zeilen bringst.
Schmatische Illustration mit 3 Sprachenen
Code:
[key1] [wert1-Sprache1][wer1-Sprache2][wert1-Sprache3]
[key2] [wert2-Sprache1][wer1-Sprache2][wert2-Sprache3]
[key3] [wert3-Sprache1][wer3-Sprache2][wert3-Sprache3]
[key4] [wert4-Sprache1][wer4-Sprache2][wert4-Sprache3]
...
Man könnte beispielsweise ein spezielles TableModel bauen was dann die in diesem Beispiel3 Resource-Bundes Schlüsselweise einbringt, nachdem die gegenüberzustellenden Sprachen (resource-Bundesl) in einem DateiDialog vom Anwender gewählt wurden.
Wenn eine Zelle durch den Anwender mittels eines entsprechenden Cell-Editors geändert wurde kann man den Inhalt in das entsprechende im Arbeitsspeicher befindliche Resourcebundle überführen, den schlüssel und die Spalte zu erkennen welcher Eintrag für welche Spalte geändert wurde hast Du ja durch den Table mit seinem gefüllten Model vorliegen.
man sollte vielleicht auch eine Dirty-Flagge etablieren, die beim verändern des TableModels auf true gesetzt wird, damit der Anwender notfalls noch gefragt werden kann, wenn der die Anwendung verlässt ohne vorher gesichert zu haben.

BTW: ich glaube es gibt da schon eine Freie Anwendung die mehr als nur 2 Sprachen gegenüberstellt, leider habe ich den Link nicht mehr gefunden :-/

Ich selbst habe vor einigen Jahren eine kleine Anwendung geschrieben, die jedoch nur 2 sprachen auf diese Weise für eine Übersetzung gegenüberstellt.

Hope it helps

Takidoso
 

Neue Beiträge

Zurück