개발 공부/JAVA

입출력 (InputStream/Reader), file 라이브러리

공부하는개발자_ 2023. 6. 8. 12:36

 

 

InputStream (System.in)
Reader : 파일을 읽기위함

 

 

 

 

 

 

 

 

 

 

ObjectInputStream

ObjectOutputStream

 

 

 

 

출력stream

모니터

PrintStream ps = System.out;

PrintStream oos = s.getOutptStream( );

소켓 OutputStream oos = s.getOutptStream( );

 

 

 

직렬화 : ObjectOutputStream / ObjectInputStream

직렬화 할때 클래스와 역직렬화 할때 클래스의 내용이 다르면 안 된다. 반드시 같아야 한다.

 

 

 

파일의 크기를 알고 싶을때

File f = new File("a.txt"))

f.length(); 

 

canWirte()

canRead()

 

 

 

file 라이브러리 

import java.io.File;

import java.io.IOException;

import java.text.SimpleDateFormat;

import java.util.Date;

 

public class FileTest {

public static void test(File f) {

String name = f.getName();

System.out.print(name);

 

boolean directory = f.isDirectory();

if(directory) {

System.out.println("디렉토리입니다");

File[] files = f.listFiles();

for(File subf: files) {

String subName = subf.getName();

System.out.println(subName);

if(subf.isDirectory()) {

System.out.println("폴더");

}else {

System.out.print("파일");

long subLength = subf.length();

System.out.println("크기:" + subLength);

}

}

}else {

System.out.println("디렉토리가 아닙니다");

System.out.println("파일크기:" + f.length());

System.out.println(f.canWrite()?"쓰기가능":"쓰기금지");

//if(f.canWrite() == true){과

//if(f.canWrite() ){는 같음

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); //24시간으로 보고싶은경우 HH 대문자

System.out.println("최종사용시간:" + sdf.format(new Date(f.lastModified())));

 

}

}

public static void deleteTest(File f) {

if(f.exists()) {

if(f.delete()) {

System.out.println(f.getName()+"삭제 성공");

}else {

System.out.println(f.getName()+"삭제 실패");

}

}else {

System.out.println("존재 하지 않습니다");

}

}

 

public static void createTest(File f) {

 

if(!f.exists()) {

try {

if(f.createNewFile()) {

System.out.println(f.getName()+"생성성공");

}else {

System.out.println(f.getName()+"생성실패");

}

}catch (IOException e) {

e.printStackTrace();

}

}else {

System.out.println(f.getName()+"있습니다");

}

}

public static void pathTest(File f) {

System.out.println("f.getName():" + f.getName());

System.out.println("f.getAbsolutePath():" + f.getAbsolutePath());

System.out.println("f.getParent():"+ f.getParent());

System.out.println("f.getPath():"+ f.getPath());

 

 

}

public static void main(String[] args) {

File f;

f = new File("D:\\263\\myJAVA");

test(f);

 

f = new File("C:\\Users\\KOSTA\\Pictures\\Screenshots\\스크린샷 2023-05-31 115946.png");

test(f);

 

f = new File("D:\\263\\myJAVA\\a.txt");

deleteTest(f);

 

f = new File("D:\\263\\myJAVA\\a.txt");

createTest(f);

 

pathTest(f);

pathTest(new File("."));

 

}

}

 

 

'개발 공부 > JAVA' 카테고리의 다른 글

JDBC 연결 실습  (0) 2023.06.20
thread  (2) 2023.06.09
JCF (Java Collection Framework) 자료구조형 라이브러리 활용  (1) 2023.06.01
java 예외  (0) 2023.05.31
java 추상 클래스 / 인터페이스/ 중첩클래스  (0) 2023.05.31