Mehrsprachige Konsolenanwendung entwerfen

mbcd

Grünschnabel
Hi Leuts,

mit der Suche gibts zwar was zu finden, aber eben nur wenn man eine eine grafische Oberfläche gestalten will.

Ich möchte jedoch eine Konsolenanwendung basteln die eben mehrsprachig ist.

Mit der Suche oder google finde ich da nichts passendes, halt eben nur für GUI. Gibt es nichts vergleichbares oder sogar das Gleiche auch für die Konsolenprogramme ?

Also strings in einer speziellen Resourcedatei ablegen und das Programm entscheidet selber anhand des Systemes welche Sprache gewählt wird ?

Bei der GUI-Erstellung geht das so schön.

MFG
 
Siehe: http://www.telerik.com/help/winforms/advancedmultilanguagelocal.html
(Gefunden über Suchbegriffe "vb.net localized ressources")

Füge deinem Projekt für jede Sprache eine Resource-Datei hinzu. Wichtig ist dabei, dass du die Dateien richtig benennst. Für Deutsch sollte die Datei "Resource.de-DE.resx" heißen.
Darin speicherst du dann deine Strings.
Wenn du nun eine weitere Datei "Resource.fr-FR.resx" (für Französisch) erstellst, dann kannst du hier den Strings andere Werte zuweisen.

Hier ein kleiner Beispielcode (ich habe eine String-Resource erstellt und sie "hallo" genannt):
Code:
Dim test As String = My.Resources.hallo ' liefert "Hallo Welt" wenn das System auf de-DE steht
Console.WriteLine(test)

Threading.Thread.CurrentThread.CurrentUICulture = New Globalization.CultureInfo("en-US")
test = My.Resources.hallo ' liefert jetzt "Hello World", da ich en-US erzwungen habe
Console.WriteLine(test)
 
Jo, das funktioniert genauso einfach wie ich mir das erhofft hatte. Vom Prinzip her genau gleich wie mit GUI, nur das man hier manuell verzweigen muß was bei der GUI (zumindest bei Visual Studio) automatisch passiert.

Ist ja wirklich wunderbar einfach.

Vielen Dank
 

Neue Beiträge

Zurück