1. 파일 다루기
package com.ohj.test;
import java.io.File;
public class MainClass {
public static void main(String[] args) {
//1. 파일 다루기(File.class)==>예외처리가 없다.(내부데이터 건들이지 않는다.파일 자체를 건들인다.) new File("경로")
File f =new File("c:/windows");
//C:\Users\USER\Desktop\mysql-essential-5.1.60-win32
System.out.println("읽을 수 있는지:"+f.canRead());
System.out.println("쓸 수 있는 지"+f.canWrite());
System.out.println("폴더 인지:"+f.isDirectory());//폴더 인지 아닌지 확인시켜주는 것
System.out.println("파일인지"+f.isFile());//파일인지 아닌지 확인 시켜주는 것
System.out.println("마지막 수정 날짜를 10진수로:"+f.lastModified());//맨 마지막 수정된 날짜를 10진수로 알려줌
//1578873452925:1970.1.1 00:00:00 부터 현재까지의 시간을 10진수로
System.out.println("파일의 크기:"+f.length());
System.out.println("폴더일 경우 내부 폴더 및 파일 이름들"+f.list());//폴더일 경우에 String으로 반환시켜주는 것
String[] file_list=f.list();
for(int i=0;i<file_list.length;i++){
System.out.println(file_list[i]);
}
String uri="c:/windows";
String[] file_list2=f.list();
for(int i=0;i<f.length();i++){
File f2 = new File(uri+file_list2[i]);
if(f2.isDirectory()){
System.out.println("폴더:"+file_list2[i]);
}else{
System.out.println("파일:"+file_list2[i]);
}
}
}
}
2. 파일 내부 데이터 읽기, 예외처리
package com.ohj.test;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class MainClass2 {
public static void main(String[] args) {
// 파일 내부(데이터:텍스트)읽기 FileReader.class(로컬 파일들을 다룰 때 pc에 있는 파일을 다룰 때)
//2-1. 글자 한개씩 byte단위로 읽기 FileReader.class=>read() => (char)byte형반환 시켜줘야 함
//2-2. 한 줄씩 읽기 BufferedReader.class=>readLine()=>String
// 1.fileReader객체를 먼저 생성 : new FileReader("읽을 파일의 경로 및 파일");
// 2.BufferedReader객체를 만든다 : new BufferedReader(FileReader객체);
//*FileReader.Class의 부모 클래스=>File.class
//*~~inputStream.class:네트워크를 통해 데이터를 읽을 때(인터넷을 통해서)
//C:\Users\USER\workspace\20200113\src\com\ohj\MainClass2.java
String uri="C:/Users/USER/workspace/20200113/src/com/ohj/MainClass2.java";
try {//강제 종료를 막아주는 기능(예외처리)
FileReader f1=new FileReader("c:/filetest/memo.txt");
BufferedReader br=new BufferedReader(f1);
String line="";
while((line=br.readLine())!= null){
//line=br.readLine(); // 한 줄씩 읽어라.
//if(line==null){//EOF: end of file(즉, 문서의 끝)
// break;
//}
System.out.println(line);
}
//System.out.println(br.readLine());//읽을 때도 예외처리가 들어간다. 첫번째 줄이 나옴
//System.out.println(br.readLine());//두번째 줄이 나옴
} catch (IOException fnfe) {//FileNotFoundException 클래스명//IOException예외처리가 더들어감/IOException는 FileNotFoundException보다 조상
System.out.println(fnfe.getMessage());//파일 찾기를 실패할 경우
}
}
}
3. 웹 문서 파일 만들기
package com.ohj.test;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class MainClass3 {
public static void main(String[] args) {// 웹 문서 파일 만들기
// 3.파일에 데이터(한 줄씩 쓰기)
//3-1.filewriter.Class -> write("문자열")
//3-2 BufferedWriter.class=>newLine()줄 /write("문자열")
String uri = "c:/filetest/basic.html"; //어느 경로에 어떤 파일명으로
try {
FileWriter fw=new FileWriter(uri);
BufferedWriter bw=new BufferedWriter(fw);
bw.write("<html>");
bw.newLine();
bw.write("<body bgcolor='yellow'>");
bw.newLine();
bw.write("웹페이지 내부에 보여지는 글씨");
bw.newLine();
bw.write("<form action = 'test.html' method='get'>");
bw.write("<input type = 'text' name='txt' />");
bw.write("<input type = 'submit' />");//띄어쓰기를 잘해야함
bw.write("</form>");
bw.newLine();
bw.write("</body>");
bw.newLine();
bw.write("</html>");
bw.close();
} catch (IOException e) {
System.out.println(e.getMessage());//파일 찾기를 실패할 경우
}
}
}
package com.ohj.test;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class MainClass4 {
public static void main(String[] args) {// 웹 문서 파일 만들기
// 3.파일에 데이터(한 줄씩 쓰기)
//3-1.filewriter.Class -> write("문자열")
//3-2 BufferedWriter.class=>newLine()줄 /write("문자열")
String uri = "c:/filetest/main.java";//어느 경로에 어떤 파일명으로
try {
FileWriter fw=new FileWriter(uri);
BufferedWriter bw=new BufferedWriter(fw);
bw.write("public class Main{");
bw.newLine();
bw.write("public static void main(String[] args) {");
bw.newLine();
bw.write("System.out.println(\"출력\");");
bw.newLine();
bw.write("}");
bw.newLine();
bw.write("}");
bw.close();
} catch (IOException e) {
System.out.println(e.getMessage());//파일 찾기를 실패할 경우
}
}
}