mirror of https://github.com/2dust/v2rayN
Fix LocalizationHelper for AmazTool
parent
1866a59d12
commit
499a16feae
|
@ -8,5 +8,10 @@
|
|||
<Copyright>Copyright © 2017-2024 (GPLv3)</Copyright>
|
||||
<FileVersion>1.3.0</FileVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Assets\en-US.json" />
|
||||
<EmbeddedResource Include="Assets\zh-CN.json" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -6,7 +6,7 @@ namespace AmazTool
|
|||
{
|
||||
public class LocalizationHelper
|
||||
{
|
||||
private static Dictionary<string, string> languageResources = [];
|
||||
private static Dictionary<string, string> _languageResources = [];
|
||||
|
||||
static LocalizationHelper()
|
||||
{
|
||||
|
@ -18,26 +18,23 @@ namespace AmazTool
|
|||
{
|
||||
try
|
||||
{
|
||||
string currentLanguage = CultureInfo.CurrentCulture.Name;
|
||||
var currentLanguage = CultureInfo.CurrentCulture.Name;
|
||||
if (currentLanguage != "zh-CN" && currentLanguage != "en-US")
|
||||
{
|
||||
currentLanguage = "en-US";
|
||||
}
|
||||
|
||||
string resourceName = $"AmazTool.{currentLanguage}.json";
|
||||
var resourceName = $"AmazTool.Assets.{currentLanguage}.json";
|
||||
var assembly = Assembly.GetExecutingAssembly();
|
||||
|
||||
using Stream? stream = assembly.GetManifestResourceStream(resourceName);
|
||||
if (stream != null)
|
||||
using var stream = assembly.GetManifestResourceStream(resourceName);
|
||||
if (stream == null) return;
|
||||
|
||||
using StreamReader reader = new(stream);
|
||||
var json = reader.ReadToEnd();
|
||||
if (!string.IsNullOrEmpty(json))
|
||||
{
|
||||
using StreamReader reader = new(stream);
|
||||
|
||||
var json = reader.ReadToEnd();
|
||||
|
||||
if (!string.IsNullOrEmpty(json))
|
||||
{
|
||||
languageResources = JsonSerializer.Deserialize<Dictionary<string, string>>(json) ?? new Dictionary<string, string>();
|
||||
}
|
||||
_languageResources = JsonSerializer.Deserialize<Dictionary<string, string>>(json) ?? new Dictionary<string, string>();
|
||||
}
|
||||
}
|
||||
catch (IOException ex)
|
||||
|
@ -56,12 +53,7 @@ namespace AmazTool
|
|||
|
||||
public static string GetLocalizedValue(string key)
|
||||
{
|
||||
if (languageResources.TryGetValue(key, out var translation))
|
||||
{
|
||||
return translation;
|
||||
}
|
||||
|
||||
return key;
|
||||
return _languageResources.TryGetValue(key, out var translation) ? translation : key;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue