الموارد في تنسيق الملف .Resources
تم تصميم فئة ResourceWriter خصيصًا لإنشاء ملفات .resources. تذكر أنه يمكنك حفظ الكائنات فقط في ملفات الموارد .resources و .resx. يجب تضمين ملفات الموارد التي لها تنسيق الملف .resources فقط في وقت تشغيل تنفيذي أو تحويلها برمجياً إلى تجميع تابع. يمكنك إما استخدام الفئة ResourceWriter مباشرةً من التعليمات البرمجية أو استخدام مولد ملفات الموارد (Resgen.exe) لإنشاء ملفات .resources.
ملاحظة |
---|
لا تستخدم ملفات الموارد لتخزين كلمات المرور أو معلومات الأمان الهامة أو البيانات الخاصة. |
استخدام فئة ResourceWriter
يمكنك استخدام الفئة ResourceWriter لإنشاء ملف .resources مباشرة من التعليمات البرمجية. أولاً، قم بإنشاء ResourceWriter باسم ملف فريد. و بعد ذلك، قم باستدعاء أسلوب ResourceWriter.AddResource لكل سلسلة تريد إضافتها للملف. و أخيراً، قم باستدعاء الأسلوب ResourceWriter.Close لكتابة السلاسل إلى الملف المورد ثم قم بإغلاق الـ ResourceWriter. فيما يلي مثال يوضّح تلك العملية.
Imports System
Imports System.Resources
Public Class SampleClass
Public Shared Sub Main()
' Create a resource writer.
Dim rw As IResourceWriter
rw = new ResourceWriter("myStrings.resources")
' Add resources to the file.
rw.AddResource("color1", "red")
rw.AddResource("color2", "green")
rw.AddResource("color3", "blue")
' Close the ResourceWriter.
rw.Close()
End Sub
End Class
using System;
using System.Resources;
public class SampleClass
{
public static void Main()
{
// Create a resource writer.
IResourceWriter rw = new ResourceWriter("myStrings.resources");
// Add resources to the file.
rw.AddResource("color1", "red");
rw.AddResource("color2", "green");
rw.AddResource("color3", "blue");
// Close the ResourceWriter.
rw.Close();
}
}
استخدام Resgen.exe
مولد ملفات الموارد (Resgen.exe) يقوم بتحويل ملفات .txt إلى ملفات .resources بواسطة التفاف الأساليب المنشأة من قبل الفئة ResourceWriter. يقوم Resgen.exe أيضاً بتنفيذ التفاف ResourceReader، مما يسمح لك استخدام الأداة لتحويل ملفات .resources مرة أخرى إلى ملفات .txt.
ملاحظة |
---|
عندما يقوم Resgen.exe بقراءة ملف نصي, يتم فقدان التعليقات و لن تتم كتابتها إلى ملف .resources أو ملف .resx الناتج. |
و إذا كان الملف النصي يحتوي على أسماء الموارد المتكررة فإن Resgen.exe سوف يرسل تحذير و يتجاهل الأسماء المكررة.
ينشئ أمر الـ Resgen.exe التالي ملف الموارد: strings.resources من الملف المدخل strings.txt.
resgen strings.txt
إذا كنت تريد أن يكون اسم الملف المخرج مختلفاً عن الملف المدخل، يجب أن تحدِّد اسم الملف المخرج بشكل واضح. يقوم الأمر التالي بإنشاء ملف الموارد: MyApp.resources من الملف المدخل strings.txt.
resgen strings.txt MyApp.resources
يقوم الأمر التالي بإنشاء ملف نصي: strings.txt من الملف المدخل strings.resources. لاحظ أنك يجب أن تقوم بتنفيذ هذا النوع من التحويل فقط على ملف .resources يحتوي على سلاسل فقط. لا يمكن كتابة أي مراجع كائنات إلى ملف .txt.
resgen strings.resources strings.txt
يقوم Resgen.exe بتحويل ملفات .resx في ملفات .resources بواسطة التفاف الأساليب المنشأة من قبل الفئة ResourceWriter. يقوم Resgen.exe أيضاً بتنفيذ التفاف ResourceReader، مما يتيح لك استخدام الأداة لتحويل الملفات .resources مرة أخرى إلى ملفات .resx.
ينشئ أمر الـ Resgen.exe التالي ملف الموارد: items.resources من الملف المدخل items.resx.
resgen items.resx
يقوم الأمر التالي بإنشاء ملف .resx : items.resx من الملف المدخل items.resources. لاحظ أنه في تحويل ملف .resx إلى ملف .resources، يتم الحفاظ على كافة الكائنات.
resgen items.resources items.resx
ملاحظة |
---|
إذا فشل Resgen.exe لأي سبب كان سيتم إرجاع القيمة –1. |