added error handling to locgen

This commit is contained in:
timerix 2022-10-30 14:42:59 +06:00
parent 7f2aa76265
commit 0cc81ae837

View File

@ -10,28 +10,36 @@ static class ParadoxRusLocalisationGen
static void Main(string[] args) static void Main(string[] args)
{ {
if (args.Length != 2 || args[0] == "/?" || args[0] == "help" || args[0] == "--help") try
{ {
Console.WriteLine("[dir with eng localisation] [dir with rus localisation]"); if (args.Length != 2 || args[0] == "/?" || args[0] == "help" || args[0] == "--help")
return;
}
string engDir = args[0];
string rusir = args[1];
foreach (string enfFileName in Directory.GetAllFiles(engDir))
{
string rusFileName = enfFileName
.Replace(engDir, rusir)
.Replace("l_english", "l_russian");
if(!File.Exists(rusFileName))
{ {
string text = File.ReadAllText(enfFileName) Console.WriteLine("[dir with eng localisation] [dir with rus localisation]");
.Replace("l_english:", "l_russian: "); return;
byte[] bytes = StringConverter.UTF8BOM.GetBytes(text); }
File.WriteAllBytes(rusFileName, bytes);
ColoredConsole.Write("g",$"file {rusFileName} created\n"); string engDir = args[0];
string rusir = args[1];
foreach (string enfFileName in Directory.GetAllFiles(engDir))
{
string rusFileName = enfFileName
.Replace(engDir, rusir)
.Replace("l_english", "l_russian");
if (!File.Exists(rusFileName))
{
string text = File.ReadAllText(enfFileName)
.Replace("l_english:", "l_russian: ");
byte[] bytes = StringConverter.UTF8BOM.GetBytes(text);
File.WriteAllBytes(rusFileName, bytes);
logger.Log("g", $"file {rusFileName} created");
}
else logger.Log("y", $"file {rusFileName} already exists");
} }
else ColoredConsole.Write("y", $"file {rusFileName} already exists\n");
} }
catch (Exception ex)
{
logger.Log("r", $"{ex.Message}\n{ex.StackTrace}");
}
Console.ResetColor();
} }
} }