C'è un modo per generare automaticamente corrispondenti resx per la localizzazione di stringa in .NET?
-
23-09-2019 - |
Domanda
questa risposta , ho creato un'applicazione di esempio localizzato. La mia domanda è, c'è qualche modo per avere Visual Studio genera automaticamente il file strings.fr.resx con le stesse stringhe (stessi nomi che è, con i valori vuoti), in modo da qualcuno che conosce francese può semplicemente riempire, o devo effettivamente a creare manualmente la risorsa per ogni lingua che voglio sostenere?
Soluzione
È possibile farlo con uno strumento di 3a parte: Zeta Resource Editor
- Una volta aperto Zeta Resource Editor (ZRE), è necessario creare un nuovo ZRE progetto.
- Poi si deve aggiungere la
file di risorse esistenti nel
questo progetto.
- Per fare questo automaticamente per tutti i file di risorse:
- Fare clic su "Gruppi di file e tag" scheda
- Fare clic su "Aggiungi automaticamente più gruppi di file al progetto" e seguire le istruzioni.
- Per fare questo automaticamente per tutti i file di risorse:
- Per aggiungere la nuova lingua:
- Selezionare il nodo appropriato nel "Progetto file" albero.
- Fare clic su "Gruppi di file e tag" scheda
- Fare clic su "Crea nuovo file" e seguire le istruzioni.
- Assicurati di includere il file RESEX appena creato nel progetto di Visual Studio.
Cosa c'è di bello sull'utilizzo di questo strumento è che si può anche utilizzare per esportare / importare le traduzioni in un foglio di calcolo per le traduzioni. (È possibile farlo dalla scheda "Start")
In alternativa, è possibile scrivere il proprio piccolo programma per fare questo. Il cuore del programma è questo:
using( ResXResourceReader reader = new ResXResourceReader( resourceFileName ) )
using( ResXResourceWriter writer = new ResXResourceWriter( newResourceFileName ) )
{
foreach( DictionaryEntry entry in reader )
{
writer.AddResource( entry.Key.ToString(), "" );
}
writer.Generate();
writer.Close();
}
Altri suggerimenti
L'unica cosa che so è quello di creare il file di risorse manualmente e quindi passare al file risorsa originale e copiare le proprietà ei valori per le risorse di testo per il file appena creato. Questo ha anche il vantaggio che il tradurre sa esattamente quello che deve tradurre.