Java day20
파일 입출력
Reader(출력)
● FileReader > BufferedReader > 파일에서 출력
● FileReader : 경로에 있는 파일 준비시키기(읽기 위해)
파일이 없으면 예외 발생(FNFE) → try / catch문으로
● BufferedReader : 버퍼를 이용해서 파일 읽기
● .readLine() : \n을 기준으로 한 줄씩 읽어오기
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.nio.charset.Charset;
public class FileReaderExam {
public static void main(String[] args) throws Exception {
// 파일을 읽기 위한 객체를 생성
FileReader fr = new FileReader("D:\\java_1900_yohan\\memo\\memo\\file_in.txt", Charset.forName("UTF-8"));
// int data = 0;
// while(data != -1) { // 파일 문장의 마지막에 가면 -1을 반환한다.
// // 파일의 마지막에 가면 null이 반환, end of file이라는 값으로 -1 반환
// data = fr.read();
// // while(data != -1) 이것때문에 마지막에 ?가 뜨는데 if(data != -1)로 방어코드를 작성해서
// // 마지막 것까지 출력
// if(data != -1) {
// System.out.println((char)data);
// }
// }
// fr.close();
// System.out.println("파일 읽기 종료");
// 파일을 라인 단위로 읽기 방법
BufferedReader br = new BufferedReader(fr);
// FileReader fr = new FileReader("D:\\java_1900_yohan\\memo\\memo\\file_in.txt", Charset.forName("UTF-8"));
// 한줄을 읽어온다.
// String line = br.readLine();
// 여러줄 읽어오기
String line = "";
while(true) {
line = br.readLine();
if(line == null) break;
System.out.println(line);
}
br.close();
fr.close();
}
}
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class ReaderTest {
public static void main(String[] args) {
ArrayList<String> datas = new ArrayList<String>();
try {
// 파일을 읽기 위해서는 먼저 FileReader를 만들어준다.
FileReader fr = new FileReader("C:\\JAVA_WEB_LKM\\java\\workspace\\day17\\lang.txt");
System.out.println("파일 준비완료");
// 경로가 없을 수도 있고 파일을 읽는데 실패할 수 도 있으니 trycatch를 하지 않으면 에러발생,
// 자동완성을 시켜보면 try-catch문으로 만들어 준다.
// 다음으로 버퍼를 준비한다.
BufferedReader br = new BufferedReader(fr);
System.out.println("버퍼 준비완료");
// 파일을 읽어 오려면 다음과 같이 파일을 반복문을 돌려서 읽을 수 있다.
while(true) {
// 또한 파일을 읽어 보는데 실패 할 수도 있으니 catch문을 추가한다.
String msg = br.readLine();
if(msg == null) {
break;
}
// 만든 데이터를 msg들을 add하여 배열로 만든다.
datas.add(msg);
//System.out.println(msg);
// 파일을 이렇게 하나씩 가져올 수 도 있지만 collection을 이용해서 배열화 할 수 있다.
}
System.out.println(datas);
} catch (FileNotFoundException e) {
System.out.println("존재하지 않는 파일");
} catch(IOException e) {
System.out.println("파일 읽기 실패");
}
}
}
Author And Source
이 문제에 관하여(Java day20), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@dbekdms17/Java-day20
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
● FileReader > BufferedReader > 파일에서 출력
● FileReader : 경로에 있는 파일 준비시키기(읽기 위해)
파일이 없으면 예외 발생(FNFE) → try / catch문으로
● BufferedReader : 버퍼를 이용해서 파일 읽기
● .readLine() : \n을 기준으로 한 줄씩 읽어오기
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.nio.charset.Charset;
public class FileReaderExam {
public static void main(String[] args) throws Exception {
// 파일을 읽기 위한 객체를 생성
FileReader fr = new FileReader("D:\\java_1900_yohan\\memo\\memo\\file_in.txt", Charset.forName("UTF-8"));
// int data = 0;
// while(data != -1) { // 파일 문장의 마지막에 가면 -1을 반환한다.
// // 파일의 마지막에 가면 null이 반환, end of file이라는 값으로 -1 반환
// data = fr.read();
// // while(data != -1) 이것때문에 마지막에 ?가 뜨는데 if(data != -1)로 방어코드를 작성해서
// // 마지막 것까지 출력
// if(data != -1) {
// System.out.println((char)data);
// }
// }
// fr.close();
// System.out.println("파일 읽기 종료");
// 파일을 라인 단위로 읽기 방법
BufferedReader br = new BufferedReader(fr);
// FileReader fr = new FileReader("D:\\java_1900_yohan\\memo\\memo\\file_in.txt", Charset.forName("UTF-8"));
// 한줄을 읽어온다.
// String line = br.readLine();
// 여러줄 읽어오기
String line = "";
while(true) {
line = br.readLine();
if(line == null) break;
System.out.println(line);
}
br.close();
fr.close();
}
}
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class ReaderTest {
public static void main(String[] args) {
ArrayList<String> datas = new ArrayList<String>();
try {
// 파일을 읽기 위해서는 먼저 FileReader를 만들어준다.
FileReader fr = new FileReader("C:\\JAVA_WEB_LKM\\java\\workspace\\day17\\lang.txt");
System.out.println("파일 준비완료");
// 경로가 없을 수도 있고 파일을 읽는데 실패할 수 도 있으니 trycatch를 하지 않으면 에러발생,
// 자동완성을 시켜보면 try-catch문으로 만들어 준다.
// 다음으로 버퍼를 준비한다.
BufferedReader br = new BufferedReader(fr);
System.out.println("버퍼 준비완료");
// 파일을 읽어 오려면 다음과 같이 파일을 반복문을 돌려서 읽을 수 있다.
while(true) {
// 또한 파일을 읽어 보는데 실패 할 수도 있으니 catch문을 추가한다.
String msg = br.readLine();
if(msg == null) {
break;
}
// 만든 데이터를 msg들을 add하여 배열로 만든다.
datas.add(msg);
//System.out.println(msg);
// 파일을 이렇게 하나씩 가져올 수 도 있지만 collection을 이용해서 배열화 할 수 있다.
}
System.out.println(datas);
} catch (FileNotFoundException e) {
System.out.println("존재하지 않는 파일");
} catch(IOException e) {
System.out.println("파일 읽기 실패");
}
}
}
Author And Source
이 문제에 관하여(Java day20), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dbekdms17/Java-day20저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)