///////
Search
📄

FileReader

파일에 있는 문자 읽는 법

FileReader

FileReader(File file) FileReader(File file, Charset charset)   // Java 11 이후 FileReader(FileDescriptor fd) FileReader(String fileName) FileReader(String fileName, Charset charset)    // Java 11 이후
FileReader는 파일로부터 텍스트 데이터를 읽는다
java.io.InputStreamReader 상속받아 InputStreamReader 클래스의 read() 메서드를 사용하여 char를 한글자씩 읽는다 (단, 더이상 읽을 글자가 없을 경우 return -1)
public int read() throws IOException
Java
복사
예외 IOException 던져야 컴파일 오류가 사라진다

BufferedReader

public BufferedReader(Reader in) public BufferedReader(Reader in, int sz)
Plain Text
복사
버퍼를 이용해서 FileReader보다 더 효율적(비교할 수 없을 정도)으로 파일을 읽는다
readLine()을 사용하면 데이터를 라인 단위로 읽을 수 있다
import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class FileRead { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new FileReader("./textfile.txt")); String str; while ((str = br.readLine()) != null) { System.out.println(str); } /*hello everyone*/ br.close(); } }
Java
복사
readLine() 메서드는 텍스트를 한줄씩 읽고 더이상 읽을 내용이 없으면 return null
예외 IOException을 던져야 컴파일 오류가 사라진다.

FileReader 실습

BufferReader로 txt파일 글자 읽어오기

BufferedReader br = new BufferedReader(new FileReader(filename), 16 * 2024);
BufferedReader(String filename, int n);
n은 한번 받아올 때의 크기를 말한다. (모래를 옮기는 삽의 크기)
16 * 2024는 한번 받아올 때 16KB로 받아온다는 의미이다.
한 글자 읽어오는 메소드
readOneByte(String filename)
두 글자 읽어오는 메소드
readTwoByte(String filename)
n글자 읽어오는 메소드
readNByte(String filename, int n)
라인 하나 읽어오는 메소드
readLine(String filename)
모든 라인을 읽어오는 메소드
readAllLine(String filename)

File dir.listFiles()

경로 상의 파일 목록 읽어오는 메소드
fileList()