手动合并gitignore
This commit is contained in:
60
ResxHelper.cs
Normal file
60
ResxHelper.cs
Normal file
@@ -0,0 +1,60 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Resources;
|
||||
|
||||
namespace i18n_formatter
|
||||
{
|
||||
class ResxHelper
|
||||
{
|
||||
static string rawFilePath = "raw.text";
|
||||
static string translationFileContains = "translation";
|
||||
|
||||
|
||||
// call this second
|
||||
public static void GenerateResxFileForTranslationsInCurrentDirectory()
|
||||
{
|
||||
WalkDirectory(new DirectoryInfo(Directory.GetCurrentDirectory()));
|
||||
|
||||
}
|
||||
|
||||
static void WalkDirectory(DirectoryInfo directory)
|
||||
{
|
||||
// Process files in the current directory
|
||||
foreach (FileInfo file in directory.GetFiles("*.txt"))
|
||||
{
|
||||
if (!file.Name.ToLower().Contains(translationFileContains))
|
||||
continue;
|
||||
CreateTranslationResx(file.FullName);
|
||||
}
|
||||
}
|
||||
|
||||
static void CreateTranslationResx(string filePath)
|
||||
{
|
||||
string fileContent = File.ReadAllText(filePath);
|
||||
string rawContent = File.ReadAllText(rawFilePath);
|
||||
string resxFileName = filePath.Replace(".txt", ".resx");
|
||||
//GenerateStringResxFile(rawContent.Split(new string[] { Environment.NewLine }, StringSplitOptions.None), fileContent.Split(new string[] { Environment.NewLine }, StringSplitOptions.None), resxFileName);
|
||||
GenerateStringResxFile(rawContent.Split(new string[] { Environment.NewLine }, StringSplitOptions.None), rawContent.Split(new string[] { Environment.NewLine }, StringSplitOptions.None), "D:/DevWorkspace/i18n_formatter/bin/Debug/Resources.zh.resx");
|
||||
}
|
||||
|
||||
static void GenerateStringResxFile(string[] key, string[] value, string filePath)
|
||||
{
|
||||
int d = key.Length;
|
||||
int z = value.Length;
|
||||
if (d != z)
|
||||
{
|
||||
Console.WriteLine("key length != value length");
|
||||
return;
|
||||
}
|
||||
using (ResXResourceWriter resxWriter = new ResXResourceWriter(filePath))
|
||||
{
|
||||
for (int i = 0; i < d; i++)
|
||||
{
|
||||
resxWriter.AddResource(key[i], value[i]);
|
||||
}
|
||||
resxWriter.Generate();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user