DataScience Lab. 박사과정 김희찬 (월)

Slides:



Advertisements
Similar presentations
제 1 강 : 자료 구조 개요 서울산업기술대학교 게임공학과김태환 C.P MSN/ Penguri Entertainment Co, Ltd. All rights reserved.
Advertisements

청소년 범죄 손아영 오지연.
명품 JAVA Programming 제 3 장 반복문, 배열, 예외처리.
데이터 파일 열기 데이터 편집기 상에서 새로운 데이터 파일을 만들거나, 혹은 기존의 파일을 불러올 수 있음.
KBDA(KNU Big Data Academy) 빅데이터시대에 데이터 분석/표현을 위 한 R 프로그래밍
11장. 프로토콜 핸들러 AI &HC I LAB 김 성 현.
입출력 14.1 java.io 패키지의 개요 14.2 파일과 디렉토리
CHAP 18. 멀티미디어.
컴퓨터 응용 및 실습 Part1. OOP&Java Programming data type Review
2장 닷넷 프레임워크.
C++ Espresso 제1장 기초 사항.
IntArray[0] int length 5 intArray 객체 제 3 장 반복문, 배열, 예외처리.
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
Programming for the java Virtual machine
제14장 원격 메소드 호출 김 기 환. 조 명 휘.
데이터 관리의 모든 것 데이터 최적화하기 데이터 정렬하기 자동 필터와 고급 필터
제 4장 문 장 배정문 혼합문 제어문 표준 입출력.
강좌명 : C++프로그래밍 (C++ Programming)
제6장 제어(Control) 6.1 구조적 프로그래밍(Structured Programming)
10장 예외 Lab 10-1.
명품 JAVA Programming.
Chapter 11 – 예외 처리 Outline 11.1 설계 쟁점 11.2 Pl/I의 예외 처리 11.3 Ada의 예외 처리
명품 C++ 13장 예외 처리와 C 언어와의 링크 지정.
5 익셉션 처리.
파일 입출력에 사용되는 자바 클래스들 JDK 라이브러리의 파일을 다루는 클래스들 파일의 내용을 읽고 쓰는 클래스들
제7장 제어구조 I – 식과 문장.
음악 재생 프로그램 예외 처리 방법 try/catch 블록 예외 선언 방법
[ 단원 08 ] 예외처리와 스레드.
응용프로그램 예제 컴퓨터응용 및 실습 I.
3 JSP의 기초.
Kasimov C언어 세미나 1st.
Java 12장. 입출력 public class SumTest {
8장 자바 입출력.
Chapter 14. 입출력 스트림.
Power Java 제15장 예외 처리 (Exception Handling).
Java Programming Language (4)
제 18 강 데이터 타입 타입, 변환, 캐스팅 shcho.pe.kr.
PLC를 이용한 제어로직에 관한 연구 김 재 은.
01. 직렬화와 역직렬화에 대하여 객체의 직렬화 직렬화와 역직렬화
10장 예외 (Exceptions).
Chapter 07 소스코드의 취약점 분석.
명품 JAVA Programming 제 8 장 입출력 스트림과 파일 입출력.
명품 JAVA Essential.
Chapter 15 실전 프로젝트 01 친구 연락처 관리 프로그램 02 사진 처리 프로그램 예제 모음 요약 연습문제.
Chap07 예외 처리 7.1 예외의 개요 7.2 예외 관련 클래스 7.3 예외 처리.
C++ 프로그래밍 년 2학기 전자정보공학대학 컴퓨터공학부.
DataScience Lab. 박사과정 김희찬 (월)
문항 제작, 유형 및 분석 윤장민 권애란 민선경 정혜민.
Android Coding Convention
자바 5.0 프로그래밍.
DataScience Lab. 박사과정 김희찬 (월)
DataScience Lab. 박사과정 김희찬 (수)
DataScience Lab. 박사과정 김희찬 (수)
컴퓨터의 기초 제 2강 - 변수와 자료형 , 연산자 2006년 3월 27일.
DataScience Lab. 박사과정 김희찬 (목)
연습 문제 풀이 헥사 값의 의미 FTP 응답 코드의 의미 분석 (a) D 0A (b)
발표자료는 다음링크에서 다운로드 받으실 수 있습니다.
컴퓨터공학실습(I) 3주 인공지능연구실.
DataScience Lab. 박사과정 김희찬 (화)
U N I X 창원대학교 전자계산학과 김병찬.
Java 3장. 자바의 기본 구조 I : 변수, 자료형, 연산자 public class SumTest {
자바 5.0 프로그래밍.
Stream의 이해 : System Bufferring
제16강 입출력시스템 1.
▶서류관리 프로그램 1. 로그인….2 2. 서류등록 … 서류도착 서류스티커발행
Windows System Programming
DataScience Lab. 박사과정 김희찬 (화)
유예 X-FILE *조사자* 1301권희원 1315이예지 1317장아정 1322홍자현.
서술형 평가 확대 한국교육과정평가원 김 소 영.
2019. 학생인문독서연구회 READ TOGETHER 책모임 안내 모임 구성 및 신청서 작성 후 제출!!! * 제출일
Presentation transcript:

DataScience Lab. 박사과정 김희찬 2017-02-18 (월) Big Data Analytics Short Courses File IO basic DataScience Lab. 박사과정 김희찬 2017-02-18 (월)

파일 읽기 매번 데이터를 코드에 직접 입력하는 건 비효율적 파일에서 불러오자! 그렇다고 매번 키보드 입력도 귀찮잖아? txt 파일로 필요한 정보를 저장해두고 읽어오면 간편하다! 컴퓨터는 0101…의 데이터 나열이 프로그램이 사용하는 메모리 안으로 쏱아져 들어감 흘러들어간다고 하여 이 통로는 스트림(Stream)이라 불림

파일 읽기 파일을 읽어야하니까 File 클래스를 사용하여 “파일”을 선택함 그러면 스트림이란 녀석을 그러면 어떻게 만들지? 다행이도 Stream 클래스는 이미 구현되어 있다! 우리가 사용할 Stream 클래스는 FileReader

Exception 에러 내용은? 예외는 뭐야? 놓친 예외가 있단다 예외란 객체의 함수가 동작 시 발생할 수 있는 에러의 종류를 가리킴 파일 리더로 스트림을 생성하는 것 -> FileNotFoundException 파일이 읽을 준비가 되었는지, 읽을 때 -> IOException (InputOutput) 이 예외도 클래스의 일종이기 때문에 상하 관계가 존재 IOException이 FileNotFoundException보다 상위이므로 상위 예외 하나만 추가하면 됨

파일 읽기 저장한 파일 모양대로 읽어오고 싶다 버퍼를 사용하는 스트림 리더 하나씩 읽어오는 것에서 일정 단위만큼 읽어오면 되지 않을까 단위라 하면 한 줄 일정 단위 만큼 모으려면 그만한 공간이 필요함 이 공간을 버퍼(Buffer)라고 부름 버퍼를 사용하는 스트림 리더 BufferedReader

Exception Handling “놓친 예외”라는 표현은 무엇인가? 예외 처리는 방금한 것 아닌가? 특정 메소드가 발생하는 예외를 적절히 처리하지 못했다는 것 예외 처리는 방금한 것 아닌가? main 메소드가 예외를 발생(throw)한다고 정의한 것 예외 처리는 되지 않음 메소드가 예외를 던질 때 적절히 잡아내면 그것이 예외 처리

Exception Handling Try-catch 구문을 사용하자 예외를 던지는 메소드들은 try구역에서 실행

Exception Handling Try-catch 예 정수를 0으로 나누는 경우 ‘예외 처리 테스트 완료’는 출력되지 않고, 에러를 출력하며 프로그램이 죽음! 어찌되든 프로그램이 죽지 않고 마지막까지 실행되면 좋겠는데..

Exception Handling Try-catch 예 정수를 0으로 나누는 경우 사칙 연산 예외가 발생 ArithmeticException

NumberCount 한 글자씩 읽는 건 앞서 사용하였던 read() 메소드 사용

NumberCount 문자열을 정수로 변경 읽은 글자가 숫자인지 어떻게 확인하는가? 정수로 변경해야 숫자로 관리하기 편함 무슨 글자인지는 모르지만 일단 숫자로 바꿔보자 숫자가 아닌 경우 예외 발생 -> 예외 처리 IOException은? -> 읽는 함수 도중 발생하는 예외 숫자 형태가 아니라서 발생하는 예외는? -> NumberFormatException 예외가 발생하면 그것은 숫자가 아니므로, 다음으로 넘어감 continue

NumberCount 등장 횟수 저장 방법 각 숫자의 등장 횟수를 세는 것이므로 10칸짜리 배열을 이용 0번째 배열의 값을 확인하고, 그 값에다가 1을 더한 다음에 0번째 배열에 다시 저장 숫자 0 1 2 3 4 5 6 7 8 9 등장 횟수 2 3 0 1 2 3 4 5 6 7 8 9 2+1=3 3 2

NumberCount 구조도 파일ready? 한 글자 읽기 결과 출력 숫자? 배열에 1 늘려서 저장 false true 파일/스트림생성 배열 생성 파일ready? false true 한 글자 읽기 결과 출력 false 숫자? true 배열에 1 늘려서 저장

WordCount 문제 정의 영문 테스트 파일에서 알파벳 세기 (대소문자 구분 안함) 우리가 필요한 알파벳은 컴퓨터는 0과 1만으로 모든 것을 이해 알파벳 또한 숫자로 표현되어 있음 아스키 코드(ASCII Code) 우리가 필요한 알파벳은 대문자 A~Z : 65~90 소문자 a~z : 97~122

WordCount 문제 풀이 힌트 등장 횟수를 저장할 배열 26개 생성 읽은 것이 숫자가 아닐 때 대문자? / 소문자? 소문자면 대문자로 변경하여 통일

WordCount 구조도 파일ready? 한 글자 읽기 결과 출력 문자? 대소문자 통일 배열에 1 늘려서 저장 false 파일/스트림생성 배열 생성 파일ready? false true 한 글자 읽기 결과 출력 false 문자? true 대소문자 통일 배열에 1 늘려서 저장

THANKS