Cluster management software

Similar documents
<4D F736F F F696E74202D20C1A63234C0E520C0D4C3E2B7C228B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

파일로입출력하기II - 파일출력클래스중에는데이터를일정한형태로출력하는기능을가지고있다. - PrintWriter와 PrintStream을사용해서원하는형태로출력할수있다. - PrintStream은구버전으로가능하면 PrintWriter 클래스를사용한다. PrintWriter

PowerPoint 프레젠테이션

2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1 <LinearLayout xmlns:android=" 2 xmlns:tools="

PowerPoint Presentation

Network Programming

파일로출력하는작업순서 1. 파일을연다. 2. 파일로자료를쓴다. 3. 파일을닫는다. 파일입출력에사용되는클래스들. FileInputStream, FileOutputStream, FileReader, FileWriter 문자단위로입출력하기 사람이읽을수있는문자로만구성된파일을읽

PowerPoint 프레젠테이션

PowerPoint Presentation

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

제11장 자바 입출력

PowerPoint Presentation

Microsoft PowerPoint - 03-TCP Programming.ppt

Cluster management software

자바-11장N'1-502

JAVA PROGRAMMING 실습 08.다형성

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1"); void method() 2"); void method1() public class Test 3"); args) A

JAVA PROGRAMMING 실습 09. 예외처리

PowerPoint Presentation

09-Java Input Output

자바입출력구조 자바입출력 파일 기본입출력 필터입출력 문자입출력 비순차접근파일 객체입출력 파일입출력 바이트배열입출력 파이프입출력 연결형입력 스트링버퍼입력 스트림 ( 순차접근 ) 자바입출력구조

Design Issues

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

java.lang 패키지 java.util 패키지 java.io 패키지 콜렉션 2

JUNIT 실습및발표

PowerPoint 프레젠테이션

PowerPoint Presentation

PowerPoint Presentation

PowerPoint Presentation

02 C h a p t e r Java

Microsoft PowerPoint - lec7_package [호환 모드]

Microsoft PowerPoint - 04-UDP Programming.ppt

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

12-file.key

<4D F736F F F696E74202D20C1A63235C0E520B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

슬라이드 1

Network Programming

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Secure Programming Lecture1 : Introduction

제11장 프로세스와 쓰레드

rmi_박준용_final.PDF

PowerPoint 프레젠테이션

Java ...

PowerPoint Presentation

쉽게 풀어쓴 C 프로그래밊

Microsoft PowerPoint - 2강

PowerPoint 프레젠테이션

gnu-lee-oop-kor-lec06-3-chap7

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

[ 컴퓨터시스템 ] 3 주차 1 차시. 디렉토리사이의이동 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수

PowerPoint Presentation

비긴쿡-자바 00앞부속

쉽게 풀어쓴 C 프로그래밍

PowerPoint 프레젠테이션

Spring Boot/JDBC JdbcTemplate/CRUD 예제

Java

PowerPoint 프레젠테이션

10.0pt1height.7depth.3width±â10.0pt1height.7depth.3widthÃÊ10.0pt1height.7depth.3widthÅë10.0pt1height.7depth.3width°è10.0pt1height.7depth.3widthÇÁ10.0pt1height.7depth.3width·Î10.0pt1height.7depth.3width±×10.0pt1height.7depth.3width·¡10.0pt1height.7depth.3width¹Ö pt1height.7depth.3widthŬ10.0pt1height.7depth.3width·¡10.0pt1height.7depth.3width½º, 10.0pt1height.7depth.3width°´10.0pt1height.7depth.3widthü, 10.0pt1height.7depth.3widthº¯10.0pt1height.7depth.3width¼ö, 10.0pt1height.7depth.3width¸Þ10.0pt1height.7depth.3width¼Ò10.0pt1height.7depth.3widthµå

문서의 제목 나눔고딕B, 54pt

4장.문장

PowerPoint Presentation

교육자료

쉽게 풀어쓴 C 프로그래밍

PowerPoint 프레젠테이션

PowerPoint Presentation

슬라이드 1

목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper 클래스작성 - JSONParser 클래스작성 공공

어댑터뷰

class Sale void makelineitem(productspecification* spec, int qty) SalesLineItem* sl = new SalesLineItem(spec, qty); ; 2. 아래의액티비티다이어그램을보고 Java 또는 C ++,

(Microsoft PowerPoint - java1-lecture11.ppt [\310\243\310\257 \270\360\265\345])

유니티 변수-함수.key

JAVA PROGRAMMING 실습 02. 표준 입출력

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public

JMF2_심빈구.PDF

[ 정보 ] 과학고 R&E 결과보고서 Monte Carlo Method 를이용한 고교배정시뮬레이션 연구기간 : ~ 연구책임자 : 강대욱 ( 전남대전자컴퓨터공학부 ) 지도교사 : 최미경 ( 전남과학고정보 컴퓨터과 ) 참여학생 : 박진명 ( 전

ch09

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Semantic Consistency in Information Exchange

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

PowerPoint Presentation

JAVA PROGRAMMING 실습 05. 객체의 활용

C++ Programming

안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 -

Microsoft PowerPoint - lec2.ppt

PowerPoint Presentation

Microsoft PowerPoint 웹 연동 기술.pptx

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f

쉽게

제목

Microsoft PowerPoint - 06-Chapter09-Event.ppt

fundamentalOfCommandPattern_calmglow_pattern_jstorm_1.0_f…

JVM 메모리구조

13-Java Network Programming

The Pocket Guide to TCP/IP Sockets: C Version

오버라이딩 (Overriding)

Transcription:

자바네트워크프로그래밍 (OCJP 국제공인자격취득중심 ) 충북대학교 최민

File Class File 클래스 파일의읽고쓰기를제외하고파일과디렉토리에대한필요한많은기능등을제공 파일과디렉토리의정보를조사하고, 이들을생성및삭제하는메소드등이 File 클래스에포함 File 클래스의생성자 File(File parent, String child) File(String pathname) File(String parent, String child) File(URI uri) 2

File 클래스의메소드 boolean exists() : 지정한파일또는디렉토리가존재하는지여부를리턴합니다. boolean isdirectory() : 지정한경로가디렉토리인지의여부를리턴합니다. boolean isfile() : 지정한경로가파일인지의여부를리턴합니다. boolean canread() : 지정한파일이읽기가능한지의여부를리턴합니다. boolean canwrite() : 지정한파일이쓰기가능한지의여부를리턴합니다. long length() : 파일의길이를리턴합니다. String[] list() : 해당경로에있는파일과디렉토리의목록을 String 배열로리턴합니다. File[] listfiles() : 해당경로에있는파일의목록을 File 배열로리턴합니다. String getname() : 해당경로에있는파일이나디렉토리의이름을리턴합니다. String getparent() : 해당경로의상위디렉토리의경로명을리턴합니다. String getpath() : 인스턴스가가지고있는경로명을문자열로리턴합니다. 3

File 클래스의메소드 boolean createnewfile() : 인스턴스가가리키고있는이름대로파일을생성합니다. boolean delete() : 인스턴스가가리키고있는파일또는디렉토리를삭제합니다. void deleteonexit() : delete 와같은일을하지만 Vitrual Machine 이종료될때삭제가일어납니다. boolean mkdir() : 인스턴스가가리키고있는경로대로디렉토리를만듭니다. boolean mkdirs() : mkdir 과같은일을하지만, 디렉토리구조전체를만들어줍니다. boolean renameto(file) : 기존파일의이름을바꿉니다. boolean setreadonly() : 해당파일을읽기전용파일로만듭니다. 4

[NOTE] File 클래스에관한 OCJP 문제출제경향 ( 가장빈도가높은것 ) 메소드의이름과기능을정확하게알고있는가에관한문제 함정문제가많이출제되므로 API 문서를참고하시고특히메소드의이름을잘숙지. 5

File 의사용 인스턴스의생성 File file = new File("scjp.txt"); 파일의존재유무확인 File file = new File("scjp.txt"); if(!file.exists()) { System.out.println(file.getName() + " is not exists!"); System.exit(0); } 6

파일 / 디렉토리판정 File file = new File("c:\windows"); if(file.isdirectory()) System.out.println(file.getName() + " is a directory."); if(file.isfile()) System.out.println(file.getName() + " is a file."); 7

파일의경로정보 File 클래스의주된기능 지정된파일또는디렉토리에관한정보를알려주는기능 특히, File 클래스를통해파일의경로 (path) 에관한정보를다양한형식으로알아낼수있음. 주요메소드 getpath() 메소드는인스턴스를만들때생성자로입력된경로명을리턴 (abstract pathname 이라고합니다 ) getabsolutepath() 메소드는생성자로입력된경로명을절대경로로바꾸어서리턴 즉, 생성자로입력된경로명이상대경로일경우에는프로그램이실행된디렉토리를기준으로하여절대경로로바꾸는작업 8

파일의경로정보 메소드는얻어진절대경로를시스템에서사용하는형식의 getcanonicalpath() 메소드는좀더정규화된형태의절대경로를리턴하는메소드 getcanonicalpath() 절대경로로바꾸어줌, 예를들어유닉스시스템의경우심볼릭링크로연결된파일을실제의경로로바꾸는작업 윈도우시스템의경우드라이브문자를대문자로바꾸어주고실제존재하는파일의경우대소문자까지원래의파일명과같이맞추어줌 ( 윈도우시스템은대소문자를구별하기는하지만대소문자를틀리게입력해도같은파일 / 폴더로간주 ) 따라서 getabsolutepath() 보다정확한경로명을리턴하는 getcanonicalpath() 를사용하기를추천 9

파일의경로정보 다만, getcanonicalpath() 메소드를사용할때에는한가지주의할점 경로를알아내는다른명령어와는달리이메소드는시스템에파일시스템정보를요청하기때문에 IOException 을발생시킬수있도록설계되었다는점 따라서 getcanonicalpath() 를사용할때에는반드시 IOException 을처리 (try-catch) 하도록해야함. 10

파일및디렉토리의생성과삭제, 변경 File 클래스를사용하여파일이나디렉토리를생성 우선생성할파일이나디렉토리의경로명으로 File 클래스인스턴스를생성 File file = new File( 생성할파일또는디렉토리의경로 ); 파일을만들기위해서는 createnewfile(), 디렉토리를만들기위해서는 mkdir() 이나 mkdirs() 메소드를사용 이들메소드는이미파일객체가경로명을가지고있기때문에아무런파라미터도전달하지않아도됨. 11

파일및디렉토리의생성과삭제, 변경 mkdir() 메소드와 mkdirs() 메소드의차이해당디렉토리의상위디렉토리구조가없을경우, 이를만들어주느냐의차이입니다. mkdirs() 메소드는주어진경로명에포함된모든디렉토리구조를만들어줌 File dir = new File("language/java/scjp"); dir.mkdir(); dir.mkdirs(); 위의예에서아직 language 나 java 디렉토리가아직없는경우 mkdir() 메소드는디렉토리를만들지못했음을뜻하는 false 를리턴 mkdirs() 메소드는 language 나 java 디렉토리까지전부만들어줌 12

파일및디렉토리의생성과삭제, 변경 createtempfile() 이라는메소드 createnewfile() 메소드와성격은약간다르지만, 파일을만드는기능은동일한메소드 static 메소드임 ( 따라서, 아래예제와같이사용가능 ) 프로그램에서사용하기위한임시파일을생성 File file = File.createTempFile( 파일명, 확장자 ); File file = File.createTempFile( 파일명, 확장자, 디렉토리명 ); 13

파일및디렉토리의생성과삭제, 변경 import java.io.*; public class Test { public static void main(string[] args) throws IOException { File file = new File("scjp"); System.out.println("the file exists : " + file.exists()); file.createnewfile(); System.out.println("File created."); System.out.println("the file exists : " + file.exists()); if(file.isfile()) { System.out.println("this object is file."); } else if(file.isdirectory()) { System.out.println("this object is directory."); } } } 14

import java.io.*; public class Test { public static void main(string[] args) throws IOException { } } File file = new File("abc/../pds/java"); System.out.println(file.getPath()); System.out.println(file.getAbsolutePath()); System.out.println(file.getCanonicalPath()); 15

Which one gets the name of the parent directory of file "file.txt"? a. String name = File.getParentName("file.txt") b. String name = (new File ("file.txt").getparent()); c. String name = (new File ("file.txt").getparentname()); d. String name = (new File ("file.txt").getparentfile()); e. Directory dir = (new File ("file.txt").getparentdir()); f. String name = dir.getname(); 16

스트림 Stream 데이터의입출력을데이터의흐름 (stream) 처럼취급하는방법 자바에서입출력의핵심 자바에서는이 stream 을추상화하여 InputStream 과 OutputStream 두개의클래스를제공 Stream 과추상화 (abstraction) Stream 을사용하면 local machine 에있는파일이나네트웍을통해전달되는데이터등을모두같은방법으로처리할수있다는장점 사용자는실제데이터가있는정확한위치에대한정보를조사하거나데이터의입출력방법을따로정의하거나할필요없이 stream 을제어하는방법만알면됨 17

InputStream 의하위클래스상속관계 자바에서는제공하는 Stream 클래스 입력을위한 InputStream 추상클래스와출력을위한 OutputStream 추상클래스 용도에따라많은클래스들이이들의하위클래스로정의됨 자바에서제공하는대표적인입출력 stream 클래스들의계층구조는다음슬라이드와같음 18

OutputStream 의하위클래스상속관계 InputStream - FileInputStream - FileterInputStream - BufferedInputStream - DataInputStream - ObjectInputStream - ByteArrayInputStream - PipedInputStream OutputStream - FileOutputStream - FilterOutputStream - BufferedOutputStream - DataOutputStream - ObjectOutputStream - ByteArrayOutputStream - PipedOutputStream 19

FileOutputStream 을이용해서파일을생성 import java.io.*; public class Test { public static void main(string[] args) throws IOException { File file = new File("scjp.txt"); FileOutputStream fos = new FileOutputStream(file); for(int i=0;i<5;i++) { } fos.write(i); fos.close(); if(file.exists()) System.out.println("File length : " + file.length()); } } 20

자바 Stream 의 2 가지분류 자바에서스트림은그용도에따라두가지로나눌수있는데, 하나는데이터를제공하는소스로부터직접데이터를읽어오는일을하는스트림 File 스트림이 스스로데이터를읽어오는기능을가지고있지는않지만, 다른스트림으로부터데이터를입력받아좀더발전된형태로가공하는스트림. 즉, 스트림을거르는스트림 filter 스트림 filter 스트림의최상위클래스는 InputStream /OutputStream 의서브클래스인 FilterInputStream 과 FilterOutputStream 클래스임 21

자바 Stream 의 2 가지분류 FilterInputStream 과 FilterOutputStream 은실제로자주사용되지는않지만, 다른스트림으로부터데이터를받아가공하기위한중요한기능하위클래스들을위해제공 Fileter 스트림에는여러가지가있는데, Data 스트림과 Buffered 스트림에대해살펴보도록함. 22

자바 Stream 의 2 가지분류 Data 스트림도입필요성 기본적인 InputStream 과 OutputStream 은 byte 단위의이진데이터의읽고쓰기만을지원 따라서좀더데이터를융통성있게다루기위해만들어진 filter 스트림이 Data 스트림입니다. Data 스트림 자바의기본데이터타입을스트림을통해읽고쓸수있도록지원 즉 byte 나 int 등의수치형, char 형, char 의집합이라고할수있는 String, 그리고마지막으로 UTF(Unicode Text Format) 방식으로인코딩된문자열을읽고쓸수있도록함 23

import java.io.*; public class Test { public static void main(string[] args) throws IOException { File file = new File("scjp.txt"); FileInputStream fis = new FileInputStream(file); BufferedInputStream bis = new BufferedInputStream(fis); DataInputStream dis = new DataInputStream(bis); int value[] = new int[10]; for(int i=0;i<10;i++) { value[i] = dis.readint(); } } } 24