using System; using System.Resources; class LanguageResourceWriter { public static void WriteEnglishResources() { ResourceWriter rw = new ResourceWriter("Eng.resources"); rw.AddResource("Greeting", "Hello"); rw.Generate(); rw.Close(); } public static void WriteSpanishResources() { ResourceWriter rw = new ResourceWriter("Span.resources"); rw.AddResource("Greeting", "Hola"); rw.Generate(); rw.Close(); } public static void WriteFrenchResources() { ResourceWriter rw = new ResourceWriter("French.resources"); rw.AddResource("Greeting", "Bonjour"); rw.Generate(); rw.Close(); } public static void Main() { WriteEnglishResources(); WriteSpanishResources(); WriteFrenchResources(); } }
Development Class
Writing a resource file programmatically
using System; using System.Resources; class Test { public static void Main() { ResourceWriter rw = new ResourceWriter("English.resources"); rw.AddResource("Name", "Test"); rw.AddResource("Ver", 1.0 ); rw.AddResource("Author", "www.kutayzorlu.com/java2s/com"); rw.Generate(); rw.Close(); } }
Save and read value from resx resource file
using System; using System.Resources; using System.Drawing; using System.Collections; using System.Windows.Forms; using System.Resources; class ResourceGenerator { static void Main(string[] args) { ResXResourceWriter w = new ResXResourceWriter("ResXForm.resx"); Image i = new Bitmap("winter.jpg"); w.AddResource("myImage", i); w.AddResource("welcomeString", "www.kutayzorlu.com/java2s/com"); w.Generate(); w.Close(); // Make a resx reader. ResXResourceReader r = new ResXResourceReader("ResXForm.resx"); IDictionaryEnumerator en = r.GetEnumerator(); while (en.MoveNext()) { Console.WriteLine("Value:" + en.Value.ToString(), "Key: " + en.Key.ToString()); } r.Close(); } }
Save and load image from resource file
using System; using System.Resources; using System.Drawing; using System.Windows.Forms; using System.Reflection; class ResourceGenerator { static void Main(string[] args) { ResourceWriter rw; rw = new ResourceWriter("myResources.resources"); rw.AddResource("anImage", new Bitmap("winter.jpg")); rw.AddResource("welcomeString", "www.kutayzorlu.com/java2s/com"); rw.Generate(); try { ResourceManager rm = new ResourceManager ("myResources", Assembly.GetExecutingAssembly()); PictureBox p = new PictureBox(); Bitmap b = (Bitmap)rm.GetObject("anImage"); p.Image = (Image)b; p.Height = b.Height; p.Width = b.Width; p.Location = new Point(10, 10); // Load string resource. Label label1 = new Label(); label1.Location = new Point(50, 10); label1.Font = new Font( label1.Font.FontFamily, 12, FontStyle.Bold); label1.AutoSize = true; label1.Text = rm.GetString("welcomeString"); // Build a Form to show the resources. Form f = new Form(); f.Height = 100; f.Width = 370; f.Text = "These resources are embedded in the assembly!"; // Add controls & show Form. f.Controls.Add(p); f.Controls.Add(label1); f.ShowDialog(); } catch(Exception e) { Console.WriteLine(e.ToString()); } } }
Generate resource file with image
using System; using System.Resources; using System.Drawing; using System.Windows.Forms; using System.Reflection; class ResourceGenerator { static void Main(string[] args) { ResourceWriter rw; rw = new ResourceWriter("myResources.resources"); rw.AddResource("anImage", new Bitmap("winter.jpg")); rw.AddResource("welcomeString", "www.kutayzorlu.com/java2s/com"); rw.Generate(); } }
Save Image file to resource file
using System; using System.Globalization; using System.Resources; using System.Collections; using System.Drawing; class Class1 { static void Main(string[] args) { ResXResourceWriter RwX = new ResXResourceWriter("Java2s.resx"); RwX.AddResource("key 1", "First value"); RwX.AddResource("key 2", "Second value"); RwX.AddResource("key 3", "Third value"); // add an image to the resource file Image img = Image.FromFile("winter.jpg"); RwX.AddResource("winter.jpg", img); RwX.Generate(); RwX.Close(); ResXResourceReader RrX = new ResXResourceReader("Java2s.resx"); IDictionaryEnumerator RrEn = RrX.GetEnumerator(); while (RrEn.MoveNext()) { Console.WriteLine("Name: {0} - Value: {1}", RrEn.Key.ToString().PadRight(10, ' '), RrEn.Value); } RrX.Close(); } }
ResX Resource Writer
using System; using System.Globalization; using System.Resources; using System.Collections; using System.Drawing; class Class1 { static void Main(string[] args) { ResXResourceWriter RwX = new ResXResourceWriter("Java2s.resx"); RwX.AddResource("key 1", "First value"); RwX.AddResource("key 2", "Second value"); RwX.AddResource("key 3", "Third value"); // add an image to the resource file Image img = Image.FromFile("winter.jpg"); RwX.AddResource("winter.jpg", img); RwX.Generate(); RwX.Close(); ResXResourceReader RrX = new ResXResourceReader("Java2s.resx"); IDictionaryEnumerator RrEn = RrX.GetEnumerator(); while (RrEn.MoveNext()) { Console.WriteLine("Name: {0} - Value: {1}", RrEn.Key.ToString().PadRight(10, ' '), RrEn.Value); } RrX.Close(); } }