C'è un modo per generare automaticamente corrispondenti resx per la localizzazione di stringa in .NET?

StackOverflow https://stackoverflow.com/questions/2344897

  •  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?

È stato utile?

Soluzione

È possibile farlo con uno strumento di 3a parte: Zeta Resource Editor

  1. Una volta aperto Zeta Resource Editor (ZRE), è necessario creare un nuovo ZRE progetto.
  2. Poi si deve aggiungere la file di risorse esistenti nel questo progetto.
    • Per fare questo automaticamente per tutti i file di risorse:
      1. Fare clic su "Gruppi di file e tag" scheda
      2. Fare clic su "Aggiungi automaticamente più gruppi di file al progetto" e seguire le istruzioni.
  3. Per aggiungere la nuova lingua:
    1. Selezionare il nodo appropriato nel "Progetto file" albero.
    2. Fare clic su "Gruppi di file e tag" scheda
    3. Fare clic su "Crea nuovo file" e seguire le istruzioni.
    4. 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.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top