Existe alguma maneira de gerar automaticamente arquivos resx correspondentes para localização de strings no .NET?
-
23-09-2019 - |
Pergunta
Usando esta resposta, criei um aplicativo localizado de amostra.Minha pergunta é: existe alguma maneira de o Visual Studio gerar automaticamente o arquivo strings.fr.resx com as mesmas strings (mesmos nomes, ou seja, com valores em branco), para que alguém que saiba francês possa preenchê-los, ou eu realmente preciso criar manualmente o recurso para cada idioma que desejo oferecer suporte?
Solução
Você pode fazer isso com uma ferramenta de terceiros: Editor de recursos Zeta
- Depois de abrir o Zeta Recursion Editor (ZRE), você deve criar um novo projeto ZRE.
- Então você deve adicionar seus arquivos de recursos existentes neste projeto.
- Para fazer isso automaticamente para todos os arquivos de recursos:
- Clique na guia "Grupos de arquivos e tags"
- Clique em "Adicione automaticamente vários grupos de arquivos para projetar" e siga as instruções.
- Para fazer isso automaticamente para todos os arquivos de recursos:
- Para adicionar o novo idioma:
- Destaque o nó apropriado na árvore "Arquivos do Projeto".
- Clique na guia "Grupos de arquivos e tags"
- Clique em "Criar novo arquivo" e siga as instruções.
- Certifique -se de incluir o arquivo Resex recém -criado em seu projeto Visual Studio.
O que é bom em usar essa ferramenta é que você também pode usá -la para exportar/importar suas traduções para uma planilha para traduções. (Você pode fazer isso na guia "Iniciar")
Como alternativa, você pode escrever seu próprio pequeno programa para fazer isso. O coração do programa é o seguinte:
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();
}
Outras dicas
A única coisa que sei é criar o arquivo de recursos manualmente e, em seguida, ir para o arquivo de recursos original e copiar as propriedades e valores dos recursos de texto para o arquivo recém-criado.Isto também tem a vantagem de que o tradutor sabe exatamente o que deve traduzir.