2010-02-26 9 views
10

Utilizando this answer, creé una aplicación de muestra localizada. Mi pregunta es, ¿hay alguna forma de que Visual Studio genere automáticamente el archivo strings.fr.resx con las mismas cadenas (los mismos nombres que son, con valores en blanco), para que alguien que sabe francés pueda simplemente completarlos, o lo haga yo? En realidad, tengo que crear manualmente el recurso para cada idioma que quiero apoyar?¿Hay alguna manera de generar automáticamente los archivos resx correspondientes para la localización de cadenas en .NET?

Respuesta

10

Usted puede hacer esto con una herramienta de 3 ª parte: Zeta Resource Editor

  1. Una vez que abierta Zeta Editor de recursos (ERZ), usted tiene que crear un nuevo proyecto ZRE .
  2. Luego tiene que agregar sus archivos de recursos existentes en el de este proyecto.
    • Para hacer esto automáticamente para todos los archivos de recursos:
      1. Haga clic en "Grupos de archivos y etiquetas" ficha
      2. haga clic en "Añadir automáticamente varios grupos de archivos para proyectar" y siga las instrucciones.
  3. Para añadir el nuevo idioma:
    1. Resalte el nodo apropiado en el "Proyecto de archivos" árbol.
    2. Haga clic en la pestaña "Grupos de archivos y etiquetas"
    3. Haga clic en "Crear nuevo archivo" y siga las instrucciones.
    4. Asegúrese de incluir el archivo resex recién creado en su proyecto de Visual Studio.

Lo bueno acerca del uso de esta herramienta es que también se puede utilizar para exportar/importar sus traducciones a una hoja de cálculo para traducciones. (Esto se puede hacer desde la pestaña "Inicio")


Alternativamente, se podría escribir su propio pequeño programa para hacer esto. El corazón del programa es este:

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(); 
} 
+0

Impresionante. Gracias. –

0

Lo único que sé es crear el archivo de recursos manualmente y luego ir al archivo de recursos original y copiar las propiedades y valores de los recursos de texto en el archivo recién creado. Esto también tiene la ventaja de que el traductor sabe exactamente lo que tiene que traducir.

Cuestiones relacionadas