1

有一个资源文件名 ex:Employee.resx我必须在同一个文件夹中获得一个包含其他文化的列表。所以我是这样想的:

private void GetExtraCultures(string resxFileDirectory, string neutralResxFileName)
        {
            string resxFullPath = resxFileDirectory + Path.DirectorySeparatorChar;
            string[] extraResxCulturesPath = Directory.GetFiles(resxFullPath, neutralResxFileName.Replace(".resx", "") + "*" + ".resx");
            List<string> extraResxCulturesList = new List<string>();

            foreach (string extraCulturePath in extraResxCulturesPath)
            {
                string currentFileName = Path.GetFileName(extraCulturePath);
                if (currentFileName != neutralResxFileName)
                {
                    string t = currentFileName.Substring(currentFileName.IndexOf(".") + 1);
                    string tt = t.Substring(0, t.IndexOf("."));

                    extraResxCulturesList.Add(tt);
                }
            }
        }

你有更轻的解决方案吗?例如,对于如何从另一个字符串中取出字符串,我没有解决方案。我的意思是,除了使用子字符串方法之外,如何en-US从这个字符串中获取?"Employee.en-US.resx"非常感谢任何更轻/更好的解决方案。

4

1 回答 1

0

我在用

string file = @"i18n\i18n.de-DE.resx";
string culture = Path.GetExtension(Path.GetFileNameWithoutExtension(file)).Substring(1);
于 2015-06-26T07:22:29.350 回答