Telerik 사의 Radcontrol 사용해서 UI 만드는 중에 파일을 읽어오고 만들고 코드를 만드는 중입니다.
기회가 되면 RadControls for WinForms 에 대해 조금씩 포스팅을 할 예정입니다. 이쁘기도 하고 강력한 기능들이 많죠.
아래가 정해진 파일을 검사해서 파일이 실행파일과 같은 디렉토리에 있으면 정해진 변수에 한쭐씩 읽어서 할당하고
없으면 파일을 만드는 함수를 호출합니다.
private void Load_Initvaluefile()
{
FileStream fs = null;
StreamReader sr = null;
string Initialsetupfile = "initsetup.ini";
if (!File.Exists(Initialsetupfile)) // If the file does not exist
{
make_setupfile();
}
else
{
try
{
fs = new FileStream(Initialsetupfile, FileMode.OpenOrCreate, FileAccess.Read);
sr = new StreamReader(fs, Encoding.Default);
string message = string.Empty;
/*while ((message = sr.ReadLine()) != null)
{
// setup after read state
}*/
string message1 = sr.ReadLine().ToLower(); // fan number
string message2 = sr.ReadLine().ToLower(); // cfm of fan
string message3 = sr.ReadLine().ToLower(); // volumn
}
catch (IOException ee)
{
MessageBox.Show(ee.Message);
}
finally
{
sr.Close();
fs.Close();
}
}
}
파일이름을 할당하고요~ 실행파일이 있는 위치에 파일이 있는지 검사하고
파일이 없으면 make_setupfile(); 를 실행합니다. 소스는 아래에~
파일이 있는 경우 위에서 생성한 파일 스트림과 스트림 리더를 사용해서 한줄씩 읽어다가 변수에 넣는데
스트링이나 정수 실수 타입으로 파싱해서 집어 넣으면 됩니다.
try, catch, finally 를 사용해서 에러처리 까지 친절하게 해주고 반드시 파일 스트림과 스트림 리더는 닫아주어야 합니다.
아래는 make_setupfile(); 의 코드입니다. 초기값 - 디폴트값으로 한줄씩 써주게 되면 파일이 만들어지죠..
private void make_setupfile()
{
FileStream fs = null;
StreamWriter sw = null;
string setupfile = "initsetup.ini";
try
{
fs = new FileStream(setupfile, FileMode.OpenOrCreate, FileAccess.Write);
sw = new StreamWriter(fs, Encoding.Default);
string message = string.Empty;
sw.WriteLine("2");
sw.WriteLine("18.8");
sw.WriteLine("7");
}
catch (IOException ee)
{
MessageBox.Show(ee.Message);
}
finally
{
sw.Close();
fs.Close();
}
}
파일스트림과 스트림 리더를 생성하고 파일 이름을 정해주고, 파일 오픈해서 내용을 써주고 마찬가지로
try, catch, finally 사용해서 에러 처리를 해주고 닫습니다.
이런것들을 많이 라이브러리 화 해놓으면 - 파일네임 하나 던져주면서 객체 생성하는 방식으로 - 코딩하는게 편해지겠죠~
도움되었으면 합니다. 이만 총총...
'개발자 > C#' 카테고리의 다른 글
| 파일의 재구성~ 파일 이름 다루고, 파일 구성을 바꾸기 (0) | 2012.10.08 |
|---|---|
| c# 콤보박스 자동 완성 기능을 구현하는 다른 방법 (0) | 2012.10.01 |
| c# 콤보박스 자동완성 기능을 구현 - 리스트박스,텍스트박스에서도 동일한 원리 (1) | 2012.09.26 |
| Infrasound 관측망과 인공발파 식별연구 (0) | 2012.07.29 |
| 정수에서 1이 설정된 비트(Bit) 수 세기 (0) | 2012.07.17 |
| wfdisc 파일정보 보여주는 프로그램 (0) | 2011.12.30 |
| 상속이냐 합성이냐 (0) | 2011.03.10 |
| 35 Free C and C++ Programming Books and Ebooks (0) | 2011.03.01 |
취업, 창업의 막막함, 외주 관리, 제품 부재!
당신의 고민은 무엇입니까? 현실과 동떨어진 교육, 실패만 반복하는 외주 계약,
아이디어는 있지만 구현할 기술이 없는 막막함.
우리는 알고 있습니다. 문제의 원인은 '명확한 학습, 실전 경험과 신뢰할 수 있는 기술력의 부재'에서 시작됩니다.
이제 고민을 멈추고, 캐어랩을 만나세요!
코딩(펌웨어), 전자부품과 디지털 회로설계, PCB 설계 제작, 고객(시장/수출) 발굴과 마케팅 전략으로 당신을 지원합니다.
제품 설계의 고수는 성공이 만든 게 아니라 실패가 만듭니다. 아이디어를 양산 가능한 제품으로!
귀사의 제품을 만드세요. 교육과 개발 실적으로 신뢰할 수 있는 파트너를 확보하세요.
캐어랩