CSV 파일을 만들어야 한다.
내가 원하는 기능은
1. 한줄씩 파일에 입력하는 것.
2. listbox에 있는 데이터를 csv에 입력하는 것.
3. chart에 있는 y축 값을 차례대로 csv에 입력하는 것.
우선 코드를 다 붙여놓고 설명을 해보자.
우선 SaveFileDialog로 파일 저장 위치및 이름 지정.
그다음부터 내가 원하는 기능 설명.
1. 한줄씩 파일에 입력.
파일 저장경로를 지정했으면 FileStream을 Append모드로 생성한다.
StreamWriter 를 filestream을 지정하여 생성한다.
함수가 끝날 쯔음에 StreamWriter 부터 Close해주고, FileStream을 Close 해준다.
- 생성과 반대로 해제.
2. listBox에 있는 데이터를 csv 에 입력.
이건 생각보다 매우 간단한다.
string.Join 함수를 사용하면 한방에 끝난다.
string.Join( 나눌 문자, 리스트박스 items)
간단하다
listbox items를 그냥 넣으면 리스트 박스 설명만 한줄 나온다.
여기서 Cast<object>() 함수를 써주면 각 아이템들을 리스트화해주기때문에
각 아이템을 ","로 나눈 문자열을 만들어 준다.
만들어주고나서 StreamWriter를 사용해서 파일에 써주면 끝.
3. chart에 있는 y축 값을 차례대로 csv에 입력하는 것.
이건.. 조금 고민을 해봤는데 한방에는 어렵고 List<double>로 바꾸어 준 다음에 넣으면 된다.
반복문을이용해서 list에 넣어준다음 리스트박스 적용한 것처럼 string.join()을 사용해서 각 항목을 ","로 나누어 주면 된다.
결과
'ETC > C#' 카테고리의 다른 글
[C#] c++ Dll import (출처 및 팁..) (0) | 2017.01.03 |
---|---|
[C#] openFileDialog.FileName에서 파일 이름만(Path.GetFileName) (0) | 2016.12.22 |
[C#] Monodevelop unsafe 사용 (0) | 2016.10.04 |
[C#] 프로그램 진행 시간(StopWatch) (0) | 2016.09.29 |
[C#] 폼 닫기 안되게.. (FormClosing Event) (0) | 2016.09.26 |