C# 读取.resx资源文件内字符串的方法

添加资源文件,并命名为innerResource.resx。

C# 读取.resx资源文件内字符串的方法_第1张图片

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
using System.Resources;
using System.Windows.Forms;

namespace Demo
{
    public class DemoProgram
    {
       public static void Main(string[] args)
        {
            // System.Reflection.Assembly为资源的主程序集,这里为Demo
            ResourceManager resManagerA = new ResourceManager("Demo.innerResource", typeof(DemoProgram).Assembly);
            string astring = resManagerA.GetString("Astring");
            Console.WriteLine(astring);
            Console.ReadKey();

            ResourceManager resManagerB = new ResourceManager("Demo.innerResource", typeof(innerResource).Assembly);
            string bstring = resManagerB.GetString("Bstring");
            Console.WriteLine(bstring);
            Console.ReadKey();

            ResourceManager resMan = new ResourceManager(typeof(innerResource));
            string cstring = resMan.GetString("Cstring");
            Console.WriteLine(cstring);
            Console.ReadKey();            

            //调用ResXResourceReader类,需要引用System.Windows.Forms.dll,下同
            ResXResourceReader resxReader = new ResXResourceReader(@"C:\Users\Desktop\Demo\Demo\innerResource.resx");
            IDictionaryEnumerator dict = resxReader.GetEnumerator();
            while (dict.MoveNext())
            {
                Console.WriteLine("{0},{1}", dict.Key, dict.Value);
            }
            Console.ReadKey();

            ResXResourceSet resxSet = new ResXResourceSet(@"C:\Users\Desktop\Demo\Demo\innerResource.resx");
            IDictionaryEnumerator dicts = resxSet.GetEnumerator();
            while (dicts.MoveNext())
            {
                Console.WriteLine("{0},{1}", dicts.Key, dicts.Value);
            }
            Console.ReadKey();         
        }
    }
}

你可能感兴趣的:(C#)