0

تاپیک جامع نکات در سی شارپ

 
siryahya
siryahya
کاربر طلایی1
تاریخ عضویت : اسفند 1389 
تعداد پست ها : 158652
محل سکونت : ▂▃▄▅▆▇█Tabriz█▇▆▅▄▃▂

پاسخ به:تاپیک جامع نکات در سی شارپ
سه شنبه 22 اردیبهشت 1394  10:29 PM

فایلهای ini در سی شارپ
فایل های INI فایل های استاندارد متنی هستند که بسیاری از برنامه های حرفه ای ، بخشی از تنظیمات مانند لوکیشن واندازه فرم ، فونت یک لیبل ، رمز و ایمیل و …را در آنها ذخیره می کنند.
 
ساختار فایلهای INI به شکل زیر است:
 
کد:
[نام بخش یک]
 
نام کلید یک = مقدار یک
 
نام کلید دو = مقدار دو
 
[نام بخش دو]
 
نام کلید یک = مقدار یک
 
...........................................
 
 
برای دسترسی به فایلهای INI ابتدا میابیست کلاس INIAccess را به پروژه تان اضافه کنید.
 
کد:
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
class INIAccess
{
    [DllImport("kernel32.dll")]
    private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
    [DllImport("kernel32.dll")]
    private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
    public void INIWrite(string INIPath, string Section, string Key, string Value)
    {
        WritePrivateProfileString(Section, Key, Value, INIPath);
    }
    public string INIRead(string INIPath, string Section, string Key, string DefualtValue = "")
    {
        StringBuilder temp = new StringBuilder(255);
        int i = GetPrivateProfileString(Section, Key, DefualtValue, temp, 255, INIPath);
        return temp.ToString();
    }
}
 
 
برای استفاده از کلاس فوق ، ابتدا باید یک نمونه جدید از این کلاس ایجاد کنید
 
همون طور که میبینید در این کلاس یک روال و یک تابع وجود دارد که بصورت عمومی تعریف شده اند و هنگام استفاده قابل دسترسی هستند
 
روال INIWrite به شما این امکان را میدهد کلیدی را در بخش معین ایجاد و یا مقدار دهی کنید
این روال چهار پارامتر را بعنوان ورودی میگیرد
 
پارامتر اول نام و مسیر فایل INI ، پارامتر دوم نام بخش ، پارامتر سوم نام کلید و پارامتر چهارم مقدار را که میخواهید به کلید اختصاص دهید
 
این روال در صورت نبود فایل ، انرا ایجاد میکند و درصورت نبود نام بخش و یا نام کلید آنهارا ایجاد میکند و غیر این صورت مقدار دهی میکند
 
 
کد:
private void Form1_Load(object sender, EventArgs e)
{
 
    INIAccess ini = new INIAccess();
    string inifile = Application.StartupPath + "\test.ini";
    ini.INIWrite(inifile, "Setting", "name", "Form1");
 
}
 
 
تابع INIRead میتواند مقداری را از کلید و بخش مشخص بخواند و بعنوان رشته برگرداند
 
این تابع نیز چهار پارامتر دارد
 
پارامتر اول نام و مسیر فایل روی هارد ، پارامتر دوم نام بخش و پارامتر سوم نام کلید است پارامتر چهارم نیز اختیار ی است و در صورت نبودن فایل یا بخش یا کلید مورد نظر ، درصورت عدم مقدار دهی ، تهی برمیگرداند ودر صورت مقدار دهی آن مقدار را برمیگرداند
 
کد:
private void Form1_Load(object sender, EventArgs e)
{
    INIAccess ini = new INIAccess() ;
    string inifile = Application.StartupPath + "\test.ini";
    this.Text = ini.INIRead (inifile,"Setting", "name","None");
}
 
 
کار با فایل های ذکر شده ساده هستن فقط در هنگام ساختن چنین فایل هایی باید به دقت تنظیمات رو انجام بدین که پس از اعمال تنطیمات مشکلی بوجود نیاد

 

ترکی زبان قربون صدقه رفتنه داریم که: گوزلرین گیله‌سین قاداسین آلیم که یعنی درد و بلای مردمک چشات به جونم …!.

تشکرات از این پست
دسترسی سریع به انجمن ها