나우캠퍼스 C# 언어 6강. 파일입출력(2/3) -업그레이드 > c#

c#

Microsoft C# Programming 강의 리스트

나우캠퍼스 | C# 언어 6강. 파일입출력(2/3) -업그레이드

본문

※ 영상을 선명하게 보기 안내
  1. 유튜브 영상에서 오른쪽하단에 톱니바퀴를 클릭합니다.
  2. 팝업목록에서 "품질" 선택하세요.
  3. 원하는 해상도를 선택해주세요.
※ 모바일에서 Wifi가 아니라면 데이타가 소진될 수 있으니 주의바랍니다.
나우캠퍼스님의 c#강의 청각장애인을 위한 자막
15444117148247.jpg

 


아 이정 강에서 배웠던 내용 쓰든 밀릴 아이템들 다 해 보셨습니까 해보는
것이 중요합니다
그래서 눈으로 보고 그 다음에 귀로 듣고 머리로 생각하고 다음에 손으로
써 경험할 수 있는 것들
지금부터 조금 조심하 시험 합니다 그리고 그런 부분들이 결코 남의 코드를
그대로 내가 타이핑하는 그것니라 그 자체가 영들 경험을 할 수
있도록 해주는 하나의 좋은 기회가 되죠 그래서 어 고런 부분 등에서
동영상을 잠시 멈춰 주시고 그 코드를 입력한 시간을 반드시 가져보시기
바랍니다
자 우리가 데이터를 어이 꺼내게 되면 그 데이터에는 전부다 스트링 형태로
받아야 됩니다 그래서 그 스트링을 우리가 필요에 따라서 인위적으로
잘라서 쓸 수가 있어야 되는데요 그래서 그 잘려서 쓰기 위해서 우리가
9분 짤을 우리가 주어서 그 데이터를 구문 자를 기준해서 고어 단위별로
하나씩 하나씩 읽어 낼 수 있는 것이죠
그래서 그 부분을 스트링 이라고 하는 이 객체 안에 있는 뭐 물론 데이터
형이 했지만요
그 데이터에 메소드에서 그런분들 제공해줍니다 해서 0 곳을 사용하는
방법을 살펴보도록 하겠습니다 자 스트링이 있고요 그 다음에 어시 5
너희에게 스페이스 있고 90 스페이스 c 언어 샵으로 스페이스 스페이스
그 다음에 어
컴퓨터구조대 미역이 조금 텐데 스페이스 이렇게 9분되어 있습니다
우리의 데이터를 구문 하는 그런 방법은요
어 그 문장 안에서 사용하지 않는 그런 어떤 9분자를 우리가 인위적으로
명시를 할 수 있습니다
자 그래서 고 살 때 스플리트 라고 하는 욘 메소드를 사용하는 데요 그
다음이 매수도 안에는 지금과 같이 이런 우리가 구문 하고자 하는 9분
짤을 어 이렇게 어 푸 세퍼레이터 에다가 명시를 해 줄 수가 있습니다
그래서 어 스트링 정 스플리트 되어있구요 u 이렇게 때 있고 그 다음에
캐릭터 이렇게 주고요 그 다음에 배열을 이런 형태로 명시를 해 주죠
그러면 요 부분이 나오는 것을 기준해서 곳을 하나의 단위 별로 이렇게 다
넣어줍니다
그것이 바로 스트링에 스플리트 1 역할이죠
그래서요 것을 한번 코드를 보면서 실제로 어떻게 데이터 9분되는 지고
상을 좀 더 깊이있게 보도록 하겠습니다
소스를 보겠습니다 자 sti 지킨 했고 국어 영어 수학에서 가까이 점수를
이렇게 나열 했구요 그 다음이 어떻습니까
각각 을 어 이런 스페이스로 이렇게 9분을 해 놨습니다
자 지금 모은 우리가 문자열을 이렇게 인조를 만들었지만 결국 는
어떻습니까
파일의 다가 이렇게 문제를 썼을 경우에 그것을 우리가 스트링 리드로
의원의
또 그럼 이건 내어 지게 되면 그 데이터들이 좀더 문자열로 또 한다.니
됩니다
그렇게 하게 되면 그 반환 된 문자열을 친구같이 스트링으로 우리가 받아서
내부적으로 사용을 하게 됩니다
그리고 이 받은 그 내용들을 이미 우리가 어떤 씩 잘라 낼 거다
그 다음에 어떤 식으로 쓸 거다 라는 것을 우리가 이미 정해 같죠
전왕이 애 낳기 때문에 그것을 잘 내 머 썼어야 되는데요
자 이것을 쉽게 할 수 있도록 해서 스플리트 라고 하는 이와 같은 그
매스 들을 제공해주고 있습니다 그래서 이것은 스트리밍 데이터 형 에서
제공해주는 어
기본 메쏘드 있죠 그 다음에 내가 구하고자 하는 이 부분들을 이렇게
명시를 해 줬습니다 예 흐름을 통해서 내가 9분 자로써 뭐 여러 개 다
수기를 쓸 수 있는 것이죠
그것을 통해서 그 리턴되는 타입이 결국 뭐겠습니까 그 9분되어야 지제
구문 될 때 어떤 데이터 타입을 꿈은 되겠습니까
당연히 문자열 받아서 그 문자를 많았기 때문에 당연히 문자열 형으로
바람이 되겠죠
하지만 이 반환된 그 데이터들이 전부다 다수 이기 때문에 그 다음에 가끔
데이터 양이 다수 내가 순차적으로 나야 될 수 있도록 해주는 방법 바로
뭡니까
배열이 게 있었죠 그래서 배율로 리턴해 줍니다
자 그래서 여기서도 스트링 에서 배열을 이렇게 선호합니다 그래서 이렇게
나누어진 그 메모리에 그 첫번째 뭐 그것을 우리가 어 접근할 수 있는 그
객체의 위치 주소값 또는 위치 값 또는 주소값 ci 한데요
그 주소값을 뭡니까 요 스팅 엘리먼트 라고 하는 요 변수를 통해서 이제
접근을 할 수가 있죠 그래서 2st 엘리먼트는 어 그 배열에 하나의
별명과 같이 사용할 수 있습니다
자 그런데 요 것은 뭡니까 0번째 요것을 1번째 2번째 3번째 이런식으로
쭉 인덱스 업 부여 되죠 그래서 첫번째 세번째 다섯번째 값을 읽어 내서
이것을 1 int 팥을 통해서 우리 영원한 대로 변화는 하고 있습니다
변환을 하고요 그 다음에 그것을 더했구요 그 다음에 그것을 출력하고 있죠
그래서 123
이렇게 쭉 출력하고 있습니다 자 그 다음에 은 토탈 하고 있고요 그
다음에 에버리지 같은 경우는 어떻습니까 3.0 예쁘 나누기 때문에 부동
소숫점 으로 떨어집니다
그래서 3.5 와 같은 경우에는 1 반올림 할 수 있죠
그래서 가 돼야 되는데 그것을 하기 위한 이미 클래스 의 메소드가
존재 합니다 그래서 시 샵에서 부터는 어떤 그런 것들을 우리의 1 2 다
만들 것니라 그 잘 만들어진 클래스의 메소드들을 이용해서 적절하게
쓰는 것이 중요하죠
그렇기 때문에 어우 우리가 원하는 것을 할 때 그런 클래스가 있을까 라고
해서 그 부분을 찾아보는 것이 중요합니다
자 그래서 여기서도 쐐기 했습니다 매스 라고 하는 클래스 뇨
어 수학하고 관련된 그런 그 클래스 이구요
그 다음에 라운드 라고 하는 그 다음에 생성하지 않고 생 했기 때문에
얘는 에스테틱 함수 임을 우리가 매수 되며 알 수가 있죠 그래서 에버리지
하게 되면 은 자동적으로 반환 을 한 그 값을 리턴해 줍니다
저기서 바르나 저 반 올만 값을 리턴해 주기 때문에 그 반 올린 된 그
값을 이제 라이트 라인을 통해서 우리가 출력을 할 수가 있는 거죠 예
그래서 요런 것들을 좀 잘 아는 것도 굉장히 중요합니다 그래서 앞으로의
프로그램은 요런 것들이 좀 등장 하니까요
그런 부분들을 잘 뇌물 해도 뭔가 아니면 잘 정리를 해 놓으시면
지금은 조금 낯설지만 나중에 가서 이것이 쌓이게 되면 여러분들 나름대로의
노하우가 됩니다 그리고
생산성을 높여 주죠 그래서 그런분들을 또 코드로 작성하려고 하면 또
시간도 걸리고 거기에서 어떤 문제도 발생할 수 있잖아요
그렇죠 어울리는 완벽한 게 아니기 때문에 그래서 요런 부분들은 잘
가져와서 쓰는 것이 어 좋은 방법이라 저는 볼 수가 있고
시샵 에서는 그런 부분들을 지향하고 있습니다
소스를 실행해 보겠습니다 다 싫어하니까 머그 10 배 70 268 17
이렇게 난 것을 확인해 볼 수가 있습니다 돼요 내용은 87.1 집안 올린
데 그런 의미로 볼 수 있죠
예 자 그 다음에 어 리드 라인을 활용해 보겠습니다 자 그래서 가끔 점
제 프레임 적인 부분들이 좀 추가되는 그런 형태인데요
화면으로 부터 학생 수와 그 다음에 3 감옥 에 대한 점수 입력 받은
후에 기대 있죠 그래서 입력 받기 위해서는 우리가 앞에서 배웠던 콘솔 5
5 리드 라인을 이용하게 되면 쉽게 이며 받을 수 있습니다 그래서 학생
승려 받고 했다
그 다음에 제가 목에 점수 입력한 후에 그 다음 각각 같아요 스페이스
9분 하겠죠
그래서 서로 간이 약속입니다 그 다음에 엔터 치게 되면 그 학생 수만큼
3 감옥 에 대한 점수 입력 봤죠
그래서 학생수가 3명이다 와 하면 2세가 몽의 대한 점수를 받을 수 있는
무엇을 생상 해야 됩니까
바로 배열을 생성 해야 되겠죠 그래서 배열 생생해서 그 값을 받습니다
자 그렇게 받은 후에 테스트 점 텍스트 라고 하는 파일로 이제 저장을
합니다
저 저장하는 고 프레임을 작성할 것이고요
그 다음에 여기서도 나오죠 스페이스 로 9분하여 입력한다. 라고
되어있습니다 그래서 요 소스를 한번 보면서 요 대응이 어떻게 구성된 지
고 사항들 보도록 하겠습니다
메인이 있습니다 다음에 성적 처리를 위해 나선 순 입력해 주세요 라고
친절하게
저희는 것들을 해줄 필요가 있죠 자 그래서 리드 콘솔 리드 라인 로부터
값을 입력 받습니다 받자마자 그것을 무엇으로 int 형으로 변환하고 있죠
그래서 카운트 란 값을 넣습니다
그 다음에 국어 영어 수학 순서로 입력해 주세요 이렇게 돼 있죠 그래서
입력을 받습니다
자 여기서 받은 값이 배열을 생성하기 위한 그같은 어떤 그 개수를
의미하는 그런 갑수 사용되죠
그래서 그 레이드에서 엠카운트 있겠습니다 자들이 5
이 그레이드 한번 볼게요 자 그래 드는 결국 뭐겠습니까 바로
구조체 겠죠 그래서 자유 무엇을 위해서 보면
자 여기 보면요 스탁 그 다음에 그레이드 2기 명시했습니다 됐네 퍼블릭
퍼블릭 명시 했구요
그 다음에 국어 영어 수와 그 다음에 톡 탈 점수 의해 버리지 이렇게
포함 을 시켰죠 그래서 요구에 대한 구조체 배열을
지금 현재 이렇게 생소한 은 뭐죠
그저 이해가 아시죠
자 그리고 여기서 보듯이 스트림 라이트 를 통해서 간단하게 하는 겁니다
서 테스트 텍스트 해서 더 정 하죠 그래서 라이트 라인을 통해서 그 타
승수를 저장했습니다
어 과거에는 뭐 이런거 할때 뭐 그 메모리 주소를 명의 해트 pc 를
통해서 명시하고 래서 내신 10 부분에서는 이제 그런거 없이 이렇게
간단하게 이렇게 하죠
자 그 다음에 포문을 통해서 이렇게 하고요
그 다음에 카운트 만큼 개 술 세죠 그래서 리드 라인을 통해서 이제
실질적으로 입력을 받습니다
요 상태에서 입력 받게 되는 것이죠
자 그렇게 해놓고 어 그 다음에 그 리드 라인을 이제 반복하면서 입력
받아 들인 데요
자 그 다음에 여기서 스플리트 를 통해서 입력받은 요 네 음 져 요
내용을 어떡합니까 9분해 내죠
9분에서 데이터 스트링으로 이렇게 배열로 참조로 할 수 있도록 이렇게
났습니다
그 다음에 각각의 데이터를 우리가 분리 해서 어 어 요 구조체 안에다가
정도 차례대로 집어 넣죠
그 다음에 어 엠에스 라운드 이렇게 되어있는데요
어나 온도 같은 요는 반올림 하기 때문에 뭐 굳이 못했다 그 에 뭐 그
해 버리지 해서 뭐 소수점 이하까지 나머
우리가 할 필요가 전혀 없는 것 같습니다 그래서 어차피 해봤자 라운드를
하기 때문에 뭐 5.0 으로 밖에 안 나오겠죠
그래서 요 부분은 쯤 소스를 조금 고칠게 요 구 영어 수학 그 다음이
총점 평균을 저장하기 위해서 지금 요 와 같이 구조체를 선언했습니다
그리고 요 밑에 이제 실제 소스가 나와있는데요
먼저 문자열을 우리 입력 받기 위해서 s 티아의 그 다음에 플로트 라고
하는 그 경계를 저장하기 위한 변수를 선언했습니다
자 그 다음에 콘솔 라이트 를 통해서 성적 처리를 위한 학사 수 입력해
주세요 라고 이렇게 명시하고 있죠
그 다음에 콘솔 이드라 이를 통해서 입력을 받습니다
입력을 받자마자 그 값을 무엇으로 정수영 으로 바로 바꾸죠
왜 콘솔 리드 라인으로 언니 타나는 데이터 타입이 전부 다 뭡니까
스트링 향으로 어 립 만한 하기 때문에 이와 같은 분들을 할 수 있는
것이죠 자 그다음에 국어 영어 수학 점수 이렇게 써 라고 되어 있습니다
그리고 여기서 받은 이 값이 결국 몇 명에 대한 저 인원에 대한 그 값이
그래서 국어 영어 수학을 얼마만큼 그 구효서 단위로 받아 낼 것인지
그것을 결정을 합니다
자 그래서 위도 그레이드 이렇게 놓구요 엠카운트 에서 구조체 배열을
생성하는 것이죠
이렇게 생성했습니다 그 다음에 스트림 라이트 를 통해서 말로 씁니다
저 쓰기 위해서 테스트 점 텍스트 파일을 이렇게 그 이름으로 생성을
하구요
그 다음에 학생수를 어 저장 하 죠 그 다음에 학생수를 입력을 받습니다
1일부터 익년 받은 것을 그대로 그대로
어 툴로 하는 것이죠 그래서 이제 리드 라인을 통해서 입력을 받습니다
받은 쿄 내용은 스페이스 9분되어 있기 때문에 어이 스플리트 를 이용해서
각각의 내용들 9분할 수가 있구요
그 다음 각각의 데이터들을 제 앞에서 배웠던 코 데이터들을 어이 9t
팥을 통해서 좀더 정무 수요로 만들어서 집어 넣고 그다음에 뭐합니까
다 더 하죠 그 다음에 나눕니다 그 다음에 나는 그 값을 나온 들을
통해서 반올림을 하죠
반올림 한 후에 그 반올림 된 값을 에버리지 저장합니다
저기서 이렇게 저장할 수 있고 특히나 요 캐스트 연산자를 쓴 이유는
라운드에서 반하는 그 데이터 타입이 w 로 반환 합니다
그래서 그 int 용으로 그렇게 중 을 통해서 어요 국과 이곳에 데이터
타입을 이렇게 맞춤 것이죠 자 그 다음에 이제 여기까지 하게 되면은 모든
데이터들이 매물이 온라인 상태죠 그래서 메모리에 있는 내용들을 이제
파일로 저장 해야만 합니다
그래서 이제 반복문 포르 들 수 있고요 인원수 만큼 돌립니다 그 다음에
sw 들어가죠
자 라이트 라인을 통해서 그 형식을 이렇게 지정해줄 수 있구요
자 그 다음에 어 요 국어 영어 수학 총점 나옴 해 버리지 해서 가끔 을
죄송 알 수 있죠
그 다음에 sw 크로우즈 통해서 이제 메모리에 있는 내용들을 이제 파일의
다가가다 저장을 하게 된 것입니다
자 그러면은 여기서 제가 한번 실행해 보고 요 그 다음에 파일이 저장된
내용들을 한번 불러 보도록 하겠습니다
다시 랭 했죠 자 성적 토니를 위한 음 나 선수 입력해 주세요 네 두
사람만 듣겠습니다
구어 100점 100점 100점 무 아우 그 다음에 98.5
79 발전 뭐
7치 아 좋습니다 이렇게 하니까 이렇게 나오죠
자 그 다음에 요 내용이 저도 빨로 잘 안 돼 있기 때문에
테스트를 찾아보겠습니다
어서 테스트를 열어보니까 학생수 2명의 각각의 데이터들
그 다음에 어 계산대 어그 라운드 개
반올림 된 그 값을 이렇게 출력된 것을 볼 수가 있죠 그래서 이렇게 한번
운영해서 음 그냥 단순하게 뭐 하는 것도 좁지만 이런 식의 조금조금씩
응용을 지금 타는 것이 중요하죠
예 이전 소스 에서 저장한 데이터를 이제 읽어서 이제 메모리도 올립니다
그 다음에 그 올린 내용을 이제 출력을 해보려 하는데요
어 입력되어 있던 이미 아페쎄 습니다 학생수 이렇게 돼 있고요 그 다음에
각각의 데이터를 이렇게 콤마 로써 이렇게 9분을 시켜 놓았습니다 이미 그
앞에서 우리는 그 테스트 점 텍스트 빨리 이미 만들었죠 서 그 파일을
복사해 오션 합니다 현재 프로젝트 빈 빈 이라고 하는 그 폴더 아내의 그
파일을 넣으시고 요 작업 하셔야 되죠 그래서 고 못을 없는 코드로 한번
살펴보도록 하겠습니다
그림 볼게요 str 있으나 파일만 입력해 주세요 대의 쩡 에서 파일 를
봤습니다
그 다음에 및 을 통해서 파일을 읽어 내죠 그래서 환 문자열을 읽어
냅니다 그렇죠
이거 내고요 그 문제를 안에는 제일 먼저 2루수 에 대한 정보가 있죠
그래서 그 인원수를 9분할 때 이세일 콜론 으로 9분해 씁니다 그래서
이렇게 스플리트 를 통해서 부분 해내고 요
그거 소구 내내 두 번째 적어 초 두 번째의 그 값을 우리는 정수영
타입으로 변환 하죠
이렇게 해서 라이트 라인에서 이렇게 틀려 하고요
그 다음에 그 개수만큼 읽어 냅니다 해설이 d 라인 터에서 한주를 읽어내
이건 했을 때 그것을 9분해 내죠 스플리트 를 이용해서 9분을 해 냅니다
그랬을 때에 배열로 서 우리가 리턴을 봤죠 서 이렇게 봤구요
그 다음에 각각의 값들을 쭉 우리가 음
를 하면 대처에 좀 되니까 전 밑에다 이렇게 하겠습니다
그래서 보면은 뭐 별 걸 다 듣기 전혀 없죠 그런 후에 이제 어 라이트
라인을 통해서 마지막 처리 해 주고요
그 다음에 si 클로즈 이렇게 될 수가 있습니다
자 그러면은 뭐 코드 적인 부분에서 뭐 논리가 들어가서 어떤 대사 니아
등 가 이런 방법들이 들어간 것이 전혀 없죠
지금도 몸은 어떻습니까 좀 더 클래스 레 메소드를 사용해서 이 문제들을
풀어 나가고 있죠 그래서 그런 메소드들을 사용하면 은 이 부분이 가능
하라 라는 얘기들을 지금부터 계속 지금 강의로 서 진행을 해오고 있습니다
자 그러면은 여기에서
음 저 실제 실행을 해보면 요
자의 그 파일명을 입력해 주세요 이렇게 뜨죠
그래서 저는 베네스트 좀 txt
이렇게 임명했습니다 자 이건 a 거 씁니까 앞에서 했던 그 값들을 그대로
190 뭐 이런식으로 쭉 가지고 있죠 그래서 이렇게 출력되는 것을 볼
수가 있습니다
자 그 다음에 어이 지진파의 읽기와 쓰기를 보도록 하겠습니다
그래서 어이 짐 파일 하게 되면 여러분들 0과 1로 된 값니까 라고
생각하지만 컴퓨터에 쓰는 모든 값들은 점도 영어로 과일로 되었습니다
하지만 이것을 완 바이트로 읽어 낼 것이냐 아니면 그것을 어떻습니까
우리가 정한 그 바이트 순서 만큼으로 펌 뻐
이렇게 이루어 낼 것인가에 따라서 이 짐 파이버 텍스트 파일이 9분이
됩니다
저서 참 이거 이름이 져 매매 하게 돼 있어서 헛갈릴 경우 상당히
있습니다
그래서 이진 파일 볼게요 자 바이너리 라이트 했습니다 그 다음에 바이너리
리드 해서 이것도 그대로 똑같습니다
그 다음에 또 한 가지는 뭐냐면요 음 이 바이널 리드 라이트도 앞에서
했던 파일 스트림을 그대로 사용합니다
그렇죠 그렇게 해놓고 데이터를 읽고 쓰기를 하고 있죠
그 다음에 바이너리 미드 라이트 같은 경우는요 또 우리가 뒤에서 연 들
네트웍 이라고 하는 그 채널을 보시게 되면 거기에서 네트워크 에서 이
바이너리 리드 라이트 를 사용합니다 하기 때문에 더 요기에 대한 사람들
잘 알아 2시는 것이 곧 내 프로그 하기 위한 하나의 전 단계라고
여러분들에게 말씀드리고 싶습니다 자매 수도 있습니다
메쏘드 인데요 매수 이루게 돼 있어요 자위도 보면 부은 데 이쪽 바이트
돼 있죠
데모 나머지는 여러분들 다 뭐 읽어 낼 수 있을 것 같은데 그 다음에
싱글 저 건 뭐겠습니까 프로 테죠
저기요 분만 년들 조심하며 는 나머지들은 요 메소드의 이름 만으로도 그
값을 우리가 어
어떤 값이 이것을 전부 다 알 수가 있을 겁니다

댓글 0개

등록된 댓글이 없습니다.

본 사이트의 컨텐츠는 명시적으로 공유기능을 제공하고 있는 공개된 자료를 수집하여 게시하고 있습니다.

저작권, 강의등록, 광고, 제휴등은 "관리자에게 문의"로 메세지 주시면 확인후 답변드립니다.

Menu