Resources的详情见http://www.csharpwin.com/dotnetspace/10957r3991.shtml
1.create
public static void Main() { ResourceWriter rw = new ResourceWriter("My.resources"); Icon ico = new Icon("Demo.ico"); Image canceloff = Image.FromFile("cancel-off.png"); rw.AddResource("demo.ico", ico); rw.AddResource("cancel-off.png", canceloff); rw.AddResource("MyStr", "从资源文件中读取字符串!"); rw.Generate(); rw.Close(); }
2.load
static Hashtable Load(string fileName) { if (File.Exists(fileName)) { Hashtable resources = new Hashtable(); ResourceReader rr = new ResourceReader(fileName); foreach (DictionaryEntry entry in rr) { resources.Add(entry.Key, entry.Value); } rr.Close(); return resources; } return null; }
自己的一个例子:
//写入资源文件内容 ResourceWriter rw = new ResourceWriter("My3.resources"); // Icon ico = new Icon("Demo.ico"); Image canceloff = Image.FromFile(@"D:DocumentsVisual Studio 2010ProjectsWebApplication1ConsoleApplication1inDebugApplication.png"); //rw.AddResource("demo.ico", ico); rw.AddResource("Application.png", canceloff); rw.AddResource("MyStr", "从资源文件中读取字符串!"); rw.Generate(); rw.Close(); //从资源文件里获取相应的数据 Hashtable ht = Load(@"D:DocumentsVisual Studio 2010ProjectsWebApplication1ConsoleApplication1inDebugMy3.resources"); foreach (var VARIABLE in ht) { if((((System.Collections.DictionaryEntry)(VARIABLE)).Value).GetType().Name=="Bitmap") { Bitmap Bit = ((System.Collections.DictionaryEntry)(VARIABLE)).Value as Bitmap; Bit.Save(@"D:TEST.PNG", System.Drawing.Imaging.ImageFormat.Jpeg); } }