안녕하세요. 명월입니다.
이 글은 C#에서 환경 설정 파일을 다루는 방법(System.Configuration)에 대한 글입니다.
프로그램을 작성하면서 유저로 부터 환경 설정을 받아야 하는 경우가 있습니다. 예를 들면 웹 환경에서 log파일 저장 위치라던가, 기타 프로그램 내에서 사용할 만한 데이터 등등입니다.
예전에는 C++에서는 ini파일을 환경 설정 파일로 자주 사용했습니다. 물론 C#에서도 ini파일을 사용 못하는 건 아닙니다. 이건 다른 글로 소개를 하겠습니다.
그리고 java에서는 .property 파일로 환경 설정 파일로 사용합니다.
C#에서는 app.config를 사용합니다.
먼저 프로젝트를 실행하면 기본적으로 app.config파일은 만들어 집니다.
그리고 먼저 app.config 파일에 값을 설정하고 프로그램 안에서 읽어 오겠습니다.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup>
<appSettings>
<add key="TestData" value="Hello world"/>
</appSettings>
</configuration>
appSettings 태그 안에 add 태그를 추가합니다. 여기서 key어트리뷰트는 프로그램에서 읽어 올 키명이고 value는 값입니다.
config 파일을 읽어 오려면 라이브러리를 추가해야합니다.
(이게 app.config은 기본으로 설정되면서 사용하는 건 기본이 아닙니다...참..)
System.Configuration를 추가합니다.
using System;
using System.Configuration;
namespace Example
{
class Program
{
static void Main(string[] args)
{
//App.config 파일에서 작성했던 key명을 여기에 넣습니다.
String data = ConfigurationManager.AppSettings["TestData"];
// 결과는 Hello world
Console.WriteLine(data);
Console.WriteLine("Press any key...");
Console.ReadKey();
}
}
}
ConfigurationManager.AppSettings 함수를 사용해서 Indexer에 키 값을 넣으면 App.config에 설정했던 값을 취득해 올 수 있습니다.
참고로 프로그램을 릴리즈할 때, app.Config 파일 명은 바뀝니다. 프로젝트명.exe.config 형식으로 바뀝니다.
여기까지 C#에서 환경 설정 파일을 다루는 방법(System.Configuration)에 대한 설명이었습니다.
궁금한 점이나 잘못된 점이 있으면 댓글 부탁드립니다.
'Development note > C#' 카테고리의 다른 글
[C#] Reflection를 이용한 클래스 복제 (0) | 2019.07.12 |
---|---|
[C#] String 보간법(interpolation) (0) | 2019.07.05 |
[C#] 직렬화 (Serialization) (0) | 2019.06.27 |
[C#] ini 환경 설정 파일을 다루는 방법 (0) | 2019.06.26 |
[C#] Compare 함수의 결과 (0) | 2019.06.24 |
[C#] HttpConnection을 이용해서 웹 페이지 가져오기 (0) | 2019.06.20 |
[C#] Base64 인코딩, 디코딩하는 방법 (0) | 2019.06.18 |
[C#] 프로그램 실행 경로 (0) | 2019.06.13 |