이 영역을 누르면 첫 페이지로 이동
#include < ResetDy.com > 블로그의 첫 페이지로 이동

#include < ResetDy.com >

페이지 맨 위로 올라가기

#include < ResetDy.com >

C# | FileStream 사용하기 (Write)

  • 2017.03.02 16:56
  • Programming/C#
반응형
Log를 저장하거나 설정을 저장할때 txt파일에 저장해서 사용하면 간편하다.

- Directory 를 사용하기 위한 네임스페이스
using System.IO;


- 어디에서도 액세스 할 수 있도록 객체를 전역으로 생성
public partial Class Form1 : Form
{
     FileStream fs;               // FileStream 객체 생성
     StreamWrite sw;              // StreamWrite 객체 생성

     private string directory = "D:\\SaveFile\\";          // 파일이 저장될 디렉토리를 string변수로 생성
     private string filename = "config.txt";               // 파일 이름을 string변수로 생성
     private string filepath = directory + filename;       // 파일이 저장될 곳과 파일명을 Full로 string 변수로 생성

     ...
     ...

     public Form()
     {
          InitializeComponent();
     }
    
     ...

}


- 파일을 쓰기 할 함수나 혹은 다른 곳에서
Directory.CreateDirectory(directory);               // directory 경로로 디렉토리를 생성

fs = null;                                          // FileStream을 null로 초기화

try
{
     fs = new FileStream(filepath, FileMode.Create, FileAccess.Write);     // FileStream객체를 속성에 맞춰서 새로 생성
}
catch (Exception ex)
{
     debug.Items.Add(ex.GetType());                 // 예외타입
     debug.Items.Add(ex.Message);                   // 예외내용 출력
}


- StreamWrite 객체 생성
sw = new StreamWriter(fs, Encoding.UTF8);           // StreamWriter를 FileStream

string data = "Hello FileStream!";

sw.WriteLine(data);                                 // data변수를 StreamWrite로 쓰기
sw.Close();                                         // StreamWrite 닫기
sw.Dispose();                                       // 이건뭐지?


아래는 FileStream으로 파일을 열때 설정 할 수 있는 속성이다.
- FileStream 속성참고
fs = new FileStream(filepath, FileMode.Create, FileAccess.Write);

// 파일모드
// FileMode.Create              // 파일을 만든다. 있으면 덮어쓴다.
// FileMode.CreateNew           // 파일을 만든다. 있으면 DirectoryNotFoundException 예외가 발생한다.
// FileMode.Append              // 파일을 만든다. 있으면 뒤에서 추가로 쓴다.
// FileMode.Open                // 파일을 연다. 없으면 FileNotFoundException 예외가 발생한다
// FileMode.Truncate            // 파일을 연다. 없으면 만든다. (있든 없든 무조건 만든다.)

// 파일권한 모드
// FileAccess.Read              // 파일에 읽을 수 있는 권한만 준다.
// FileAccess.Write             // 파일에 쓰기 권한만 준다.
// FileAccess.ReadWrite         // 파일에 읽고 쓰는 권한을 둘다 준다.

- 아래는 테스트용 예제

FileStream.zip







반응형
저작자표시 비영리 변경금지 (새창열림)

'Programming > C#' 카테고리의 다른 글

[C#] TextBox, ListBox, ListView AutoScroll  (0) 2015.07.31
C# 접근 한정자  (0) 2013.08.10
[C#] Listbox AutoScroll 하기  (0) 2013.06.07
[C#] string -> char[] / char[] -> string 변환하기  (0) 2013.06.07

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • [C#] TextBox, ListBox, ListView AutoScroll

    [C#] TextBox, ListBox, ListView AutoScroll

    2015.07.31
  • C# 접근 한정자

    C# 접근 한정자

    2013.08.10
  • [C#] Listbox AutoScroll 하기

    [C#] Listbox AutoScroll 하기

    2013.06.07
  • [C#] string -> char[] / char[] -> string 변환하기

    [C#] string -> char[] / char[] -> string 변환하기

    2013.06.07
다른 글 더 둘러보기

정보

#include < ResetDy.com > 블로그의 첫 페이지로 이동

#include < ResetDy.com >

  • #include < ResetDy.com >의 첫 페이지로 이동

검색

메뉴

  • Home
  • Tag
  • Guest Book
  • Write
  • Admin

카테고리

  • 분류 전체보기 (129)
    • VR (3)
    • 내 이야기 (37)
    • Trade (13)
      • 주린이 HTS (0)
      • 주린이 일기 (2)
      • 주린이 공부 (0)
      • 주린이 매매일지 (11)
    • Hardware (2)
      • Tip (1)
      • Schematic (1)
    • Programming (24)
      • C++ (1)
      • C# (5)
      • Python (9)
      • Android (9)
    • MicroProcessor (17)
      • AVR (8)
      • STM32 (6)
      • RaspberryPi (1)
      • Smart Car (2)
    • Computer (23)
      • Tip (6)
      • Linux (5)
      • MacOS (11)
    • Car D.I.Y (10)
      • XMAX300 (1)
      • All New Carnival (5)
      • SM3 (4)

공지사항

블로그 구독하기

  • 구독하기
  • RSS 피드

정보

ResetDy의 #include < ResetDy.com >

#include < ResetDy.com >

ResetDy

방문자

  • 전체 방문자
  • 오늘
  • 어제

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © ResetDy. Designed by Fraccino.

티스토리툴바