2023. 10. 24. 16:27ㆍGame Develop/C# Programming
이번 시간은 파일 입출력에 대해 알아보자
파일 입출력 : 파일 입력, 파일 출력
텍스트 파일 입출력.
텍스트 파일 출력 = 텍스트 파일을 윈도우로 출력함. 텍스트 파일을 만듦.
텍스트 파일 입력 = 텍스트 파일의 내용을 읽어서 도스창에 보여지게 만듦. 텍스트 파일을 불러옴.
※ 콘솔창에서 보여지도록 하는게 입력이다. 유의하자!!
파일 입출력을 위해선 아래와 같은 네임스페이스를 불러와야한다.
System.IO : IO = Input/Output : 입출력
다음은 파일 입출력을 위한 명령어 중 주로 쓰이는 것들을 적어놓았다.
FileMode
Append : 파일이 존재하면 파일을 열고 맨 끝부분부터 시작. 파일이 없으면 생성.
Open : 해당하는 경로의 파일이 존재하면 열기. 존재하지 않으면 예외 발생
OpenOrCreate : 해당하는 경로의 파일이 존재하면 열기. 존재하지 않으면 새로 만듦.
Create : 파일 생성. 파일이 존재하면 덮어 씀.
CreateNew : 파일 생성. 파일이 존재하면 예외 발생.
Truncate: 파일이 존재하면 파일을 열고, 안에 있는 내용을 다 지움.
파일 출력을 위해서는 StreamWriter 클래스를 쓰고, 입력을 위해서는 StreamReader 클래스를 사용한다.
생성된 파일을 불러와 콘솔창에 출력시켰다.
현재 프로젝트의 debug 폴더에 MyText가 생성된 것을 확인할 수 있다.
이제 콘솔창에서 내용을 입력 받아서 파일을 출력하고 그것을 다시 입력을 받아오는 프로그램을 작성해 보겠다.
콘솔 창으로 이름, 아니, 키, 몸무게를 입력받는다. 해당 데이터를 파일로 출력한 후, 파일을 입력 받아 정보를 출력해보자.
여기까지는 늘 해오던 거였다. 이제 파일 입출력을 해보자
실행결과는 잘 출력되었다. 파일도 잘 저장 되어있는지 확인해보자.
파일 역시 잘 저장되었다.
하지만 이렇게 일일히 치는것도 복잡하기도 보기도 불편하기도 한 것 같다.
그래서 한 문장에 구분자를 넣어서 입력 및 출력도 가능하다.
그렇기 위해선 편의를 위해 enum(열거형)을 사용해보려고 한다.
쉽게 말해서 이는 상수(숫자)에 이름을 붙였다는 뜻이다.
위와 같이 단어를 적어놓고 이 단어에 숫자를 대입하면 된다. 예를 들어 AGE = 52라고 적는다면, AGE를 52로 사용할 수 있는 것이다. 초기화가 된 열거형 이후의 단어는 다음 초기화된 단어가 나올 때 까지 1씩 증가한다. 위의 사항을 예로 들면 name = 0, age = 1, height = 2.... 이런식이다. 또 열거형에선 초기화를 하지 않는것도 가능한데 이 경우에는 가장 처음 단어는 0으로 초기화된다.
enum도 만들어 주었으니 다시 메인 함수로 넘어와서 파일 입출력까지 하고 마무리 짓도록 하자.
이름, 나이, 키, 몸무게를 담을 문자열 데이터를 enum의 맥스 카운트(즉, 단어의 수)만큼 만들어주고.
enum에 적힌 순서대로 각각 이름, 나이, 키, 몸무게를 적어준다.
이렇게 파일 입출력에 대해서 알아보았다. 이번 포스팅은 여기서 마무리 하겠다.
'Game Develop > C# Programming' 카테고리의 다른 글
C# Practicing(가비지 컬렉션) (1) | 2023.10.24 |
---|---|
C# Practicing(스레드) (1) | 2023.10.24 |
C# Practicing(C#의 자료구조) (1) | 2023.10.24 |
C# Practicing(Generic Programming2) (0) | 2023.10.24 |
C# Practicing(Generic Programming1) (0) | 2023.10.24 |