자바는 입출력을 처리하기 위해 별도의 IO 패키지를 지원합니다.
자바 프로그램이 외부와 접속하여 데이터를 주고받을 수 있도록 작업을 도와주는 통로를
스트림 (Stream) 이라고 하며 Input과 Output Stream으로 나뉩니다.
package ex1_file;
import java.io.File;
public class Ex1_file {
public static void main(String[] args) {
String path = "C:\\WEB\\work\\Ex_0905/test.txt";
File f = new File(path);
if (f.isFile()) { // 최종 목적지가 file이면 true 아니면 false 반환
System.out.println(f.length() + "byte"); // 최종 목적지 파일의 크기 반환
}
}
}
package ex1_file;
import java.io.File;
public class Ex2_file {
public static void main(String[] args) {
String path = "C:\\WEB\\work\\Ex_0905";
File f = new File(path);
if (f.isDirectory()) // 최종 목적지가 폴더면 true 아니면 false
{
String names[] = f.list();// 최종 목적지가 폴더이면 그 안에있는 파일들의 이름을 배열로 반환
for (String i : names) {
System.out.println(i);
}
}
}
}
package ex1_file;
import java.io.File;
public class Ex3_file {
public static void main(String[] args) {
String path = "C:\\WEB\\work\\Ex_0905/abc";
File f = new File(path);
if(!f.exists()) {// 경로상의 폴더나 파일이 정상적으로 존재하면 true 아니면 false 반환
f.mkdirs(); // 폴더 생성
}
}
}
package ex2_fileinput;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class Ex1_fileInputStream {
public static void main(String[] args) {
String path = "C:\\WEB\\work\\Ex_0905/test.txt";
File f = new File(path);
if (f.exists()) {
try {
FileInputStream fis = new FileInputStream(f);
// read() : 목적지로 가서 데이터를 1바이트씩 읽어서 반환
// 더이상 읽은 데이터가 없으면 문장의 끝(end of file)인 -1을 반환
int code = 0;
while ((code = fis.read()) != -1) {
System.out.printf("%c", (char) code);
}
fis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}