ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C# ini 파일 읽고 쓰기
    닷넷/C# 2016. 8. 18. 11:23
    반응형

    ini 파일은 Config 파일이나 데이터 파일을 만들때 주로 사용하는 확장자이며 파일이다.

    C#에서 ini파일을 어떻게 생성하고 데이터를 어떻게 저장하는지, 또 어떻게 읽는지 알아보자.

     

    제일 먼저 InteropServices 지시문 추가

    using System.Runtime.InteropServices;

     

    namespace MyNameSpace
    {
    	class MyClass
    	{
    		// ini 파일을 불러올 때 사용되는 함수
    		[DllImport("kernel32")]
    		private static extern int GetPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, int nSize, string lpFileName);
    
    		// ini 파일에 저장할 때 사용되는 함수
    		[DllImport("kernel32.dll")]
    		private static extern long WritePrivateProfileString(String section, String key, String val, String filePath);
    	}
    }

     

    위 2개 함수 자체에 변수값을 넣어서 사용해도 되지만 

    사용할 때마다 모든 변수에 일일히 값을 넣기 번거롭기도 하고, 변수값이 변하지 않는 것도 있어서

    아래와 같이 함수를 한번 더 정의해서 사용할 수 있다.

    // ini 파일에 저장할 때 사용되는 함수
    private void _SetIni(string _Section, string _Key, string _Value)
    {
    	WritePrivateProfileString(_Section, _Key, _Value, "ini파일 경로\\ini파일이름.ini");
    }
    
    // ini 파일을 불러올 때 사용되는 함수
    private string _GetIni(string _Section, string _Key)
    {
    	StringBuilder STBD = new StringBuilder(1000);
    	GetPrivateProfileString(_Section, _Key, null, STBD, 5000, "ini파일 경로\\ini파일이름.ini");
    	return STBD.ToString().Trim();
    }

     

    여기서 ini 파일은 다음과 같은 구조로 되어 있으며 변수 _Section, _Key, _Value 에는 각각에 해당하는 값을 넣어서 사용하면 된다.

    ==== ini 파일을 텍스트 파일로 열었을 때 구조 ==

    [_Section]
    _Key=_Value

    =================================

     

         

    반응형

    댓글

Designed by Tistory.