Komplexe Zeichenfolgen erstellen
Führen Sie diese Task aus, um Variablenunterzeichenfolgen in eine lokalisierte Zeichenfolge einzufügen.
Vorbereitende Schritte
Informationen zu diesem Vorgang
Vorgehensweise
- Geben Sie im Nachrichtenkatalog an, an welcher Stelle die Ersetzung durch die abgerufene Zeichenfolge erfolgen soll. Variablenkomponenten werden in geschweiften Klammern angegeben (z. B. {0}).
- Erstellen Sie im Anwendungscode eine LocalizableTextFormatter-Instanz, die eine Matrix mit dem Variablenwert übergibt. Falls die Teilzeichenfolge der Variablen selbst lokalisiert werden muss, können Sie eine verschachtelte LocalizableTextFormatter-Instanz erstellen, die an Stelle eines Wertes die Instanz übergibt.
- Generieren Sie eine lokalisierte Zeichenfolge. Wenn für eine Formatter-Instanz eine format-Methode aufgerufen wird, ersetzt der Formatter jedes Element der im vorherigen Schritt übergebenen Matrix durch den Platzhalter mit dem passenden Index aus der vom Nachrichtenkatalog empfangenen Zeichenfolge. Der Wert mit dem Index 0 aus der Matrix ersetzt beispielsweise die Variable {0} in der abgerufenen Zeichenfolge.
Beispiel
Die folgende Zeile aus dem englischen Nachrichtenkatalog zeigt eine Zeichenfolge mit einer Ersetzung:
successfulTransaction = The operation on account {0} was successful.
In Nachrichtenkatalogen für andere Sprachen gibt es für denselben Schlüssel eine Übersetzung dieser Zeichenfolge mit der Variablen an der der Sprache entsprechenden Stelle.)
Der folgende Code zeigt die Erstellung einer Argumentmatrix mit nur einem Element sowie die Erstellung und Verwendung einer LocalizableTextFormatter-Instanz:
public void updateAccount(String transactionType) {
...
Object[] arg = {new String(this.accountNumber)};
...
LocalizableTextFormatter successLTF =
new LocalizableTextFormatter ("BankingResources",
"successfulTransaction",
"BankingSample",
arg);
...
successLTF.format(this.applicationLocale);
...
}