You are looking for information, articles, knowledge about the topic nail salons open on sunday near me 자바 파일 입출력 on Google, you do not find the information you need! Here are the best content compiled and compiled by the Toplist.maxfit.vn team, along with other related topics such as: 자바 파일 입출력 자바 파일 입출력 스트림, 자바 파일 읽고 쓰기, 자바 파일 읽기, 자바 파일 쓰기, 자바 파일 열기, 자바 txt 파일 저장, 자바 텍스트 파일 읽어서 배열에 저장, 자바 파일 생성
06-02 파일 입출력 – 점프 투 자바
- Article author: wikidocs.net
- Reviews from users: 16483 Ratings
- Top rated: 3.3
- Lowest rated: 1
- Summary of article content: Articles about 06-02 파일 입출력 – 점프 투 자바 파일 쓰기. 다음의 예제를 작성해 보자. import java.io.FileOutputStream; import java.io.IOException; public Sample { public static vo main(String[] … …
- Most searched keywords: Whether you are looking for 06-02 파일 입출력 – 점프 투 자바 파일 쓰기. 다음의 예제를 작성해 보자. import java.io.FileOutputStream; import java.io.IOException; public Sample { public static vo main(String[] … 온라인 책을 제작 공유하는 플랫폼 서비스
- Table of Contents:
파일 쓰기
파일 읽기
[Java] 자바 파일 입출력 (txt파일로 저장 및 읽어오기)
- Article author: coding-factory.tistory.com
- Reviews from users: 23940 Ratings
- Top rated: 3.8
- Lowest rated: 1
- Summary of article content: Articles about [Java] 자바 파일 입출력 (txt파일로 저장 및 읽어오기) 이번 포스팅에서는 이 File클래스와 출력스트림을 활용하여 텍스트(txt)파일을 생성해보고 이것을 입력스트림을 활용하여 읽어오는 예제를 한번 만들어 … …
- Most searched keywords: Whether you are looking for [Java] 자바 파일 입출력 (txt파일로 저장 및 읽어오기) 이번 포스팅에서는 이 File클래스와 출력스트림을 활용하여 텍스트(txt)파일을 생성해보고 이것을 입력스트림을 활용하여 읽어오는 예제를 한번 만들어 … File 클래스 Java.io패키지에서 제공하는 File클래스는 파일 크기, 파일 속성, 파일 이름 등의 정보를 얻어내는 기능과 파일 생성 및 삭제 기능을 제공하고 있습니다. 그리고 디렉토리를 생성하고 디렉토리에 존..
- Table of Contents:
Header Menu
Main Menu
File 클래스
성능 향상을 위한 고민 (Buffer 활용하기)
Sidebar – Right
Copyright © 코딩팩토리 All Rights Reserved
Designed by JB FACTORY
티스토리툴바
[JAVA] 자바 파일입출력, 폴더 내 파일 읽기 예제
- Article author: studyingazae.tistory.com
- Reviews from users: 37799 Ratings
- Top rated: 4.8
- Lowest rated: 1
- Summary of article content: Articles about [JAVA] 자바 파일입출력, 폴더 내 파일 읽기 예제 [JAVA] 자바 파일입출력, 폴더 내 파일 읽기 예제 · * java 기본 기능으로 파일 내용을 읽고, 새로운 파일에 쓰는 방법 작성 · (작성 후 ctrl+o로 자동 … …
- Most searched keywords: Whether you are looking for [JAVA] 자바 파일입출력, 폴더 내 파일 읽기 예제 [JAVA] 자바 파일입출력, 폴더 내 파일 읽기 예제 · * java 기본 기능으로 파일 내용을 읽고, 새로운 파일에 쓰는 방법 작성 · (작성 후 ctrl+o로 자동 … * 파일 읽기, 파일 복사, 파일 쓰기, 폴더 내 파일 읽기, FileReader, FileWriter, BufferedReader, BufferedWriter * java 기본 기능으로 파일 내용을 읽고, 새로운 파일에 쓰는 방법 작성 (작성 후 ctrl+o로 자..
- Table of Contents:
똘아재의 노트
태그
관련글
댓글0
전체 방문자
티스토리툴바
REAKWON :: [자바] 파일 입출력1(FileReader, FileWriter, BufferedReader, BufferedWriter)
- Article author: reakwon.tistory.com
- Reviews from users: 14282 Ratings
- Top rated: 3.4
- Lowest rated: 1
- Summary of article content: Articles about REAKWON :: [자바] 파일 입출력1(FileReader, FileWriter, BufferedReader, BufferedWriter) 스트림을 알았으니 파일입출력을 알아보도록 합시다. FileReader와 FileWriter. import java.io.*; public Main { public static vo main(String … …
- Most searched keywords: Whether you are looking for REAKWON :: [자바] 파일 입출력1(FileReader, FileWriter, BufferedReader, BufferedWriter) 스트림을 알았으니 파일입출력을 알아보도록 합시다. FileReader와 FileWriter. import java.io.*; public Main { public static vo main(String … 스트림 자바에서도 여러 입출력을 지원하지만 이번에 우리의 관심사는 바로 자바에서 제공하는 파일 입출력입니다. 그 전 우리는 스트림에 대한 이야기를 잠깐 간략하게 하고 넘어가겠습니다. 우선 파일에서 입력..
- Table of Contents:
티스토리툴바
32편. 파일 입출력(File input and output)
- Article author: blog.hexabrain.net
- Reviews from users: 43246 Ratings
- Top rated: 4.9
- Lowest rated: 1
- Summary of article content: Articles about 32편. 파일 입출력(File input and output) 자바의 모든 바이트 스트림 클래스는 InputStream과 OutputStream을 상속하고 있습니다. 여기서는 파일 입출력 바이트 스트림인 FileInputStream, … …
- Most searched keywords: Whether you are looking for 32편. 파일 입출력(File input and output) 자바의 모든 바이트 스트림 클래스는 InputStream과 OutputStream을 상속하고 있습니다. 여기서는 파일 입출력 바이트 스트림인 FileInputStream, … 스트림(Stream) 파일 입출력을 알아보기 전에 스트림이 무엇인지 이해해야 합니다. 여기서 말하는 스트림은 읽거나 쓸 수 있는 1차원적인 데이터의 흐름을 말합니다. 마치 강이 상류에서 하류로 흐르는 것처럼,..
- Table of Contents:
스트림(Stream)
파일 입출력(File Input and Output)
스트림 닫기
댓글
이 글 공유하기
다른 글
번외편 인터페이스라는 이름의 계약
36편 열거형(Enum Types)
30편 컬렉션(Collections)
34편 스트림(Streams) (1)
티스토리툴바
[Java] 파일 입출력 (FileReader, FileWrite) 사용법 및 예제
- Article author: hbase.tistory.com
- Reviews from users: 42843 Ratings
- Top rated: 3.9
- Lowest rated: 1
- Summary of article content: Articles about [Java] 파일 입출력 (FileReader, FileWrite) 사용법 및 예제 자바 애플리케이션을 작성할 때, 파일에 데이터를 출력하거나 파일로부터 데이터를 읽어오는 일은 흔하다. ‘[Java] 입력 스트림(InputStream)과 출력 … …
- Most searched keywords: Whether you are looking for [Java] 파일 입출력 (FileReader, FileWrite) 사용법 및 예제 자바 애플리케이션을 작성할 때, 파일에 데이터를 출력하거나 파일로부터 데이터를 읽어오는 일은 흔하다. ‘[Java] 입력 스트림(InputStream)과 출력 … 자바 애플리케이션을 작성할 때, 파일에 데이터를 출력하거나 파일로부터 데이터를 읽어오는 일은 흔하다. ‘[Java] 입력 스트림(InputStream)과 출력 스트림(OutputStream)’에서 언급했던 문자 기반 스트림인 File..
- Table of Contents:
태그
관련글
댓글0
공지사항
최근글
인기글
최근댓글
태그
전체 방문자
티스토리툴바
JAVA (자바) – 파일 입출력 (txt파일 읽기) — 개발이 하고 싶어요
- Article author: iu-corner.tistory.com
- Reviews from users: 14555 Ratings
- Top rated: 4.6
- Lowest rated: 1
- Summary of article content: Articles about JAVA (자바) – 파일 입출력 (txt파일 읽기) — 개발이 하고 싶어요 JAVA (자바) – 파일 입출력 원리 1. 파일 객체를 만든다. 2. 해당 파일을 열어 읽는다. (+읽은 내용 알아서 처리, 어디다 쓰든지 문자열을 바꾸던지 … …
- Most searched keywords: Whether you are looking for JAVA (자바) – 파일 입출력 (txt파일 읽기) — 개발이 하고 싶어요 JAVA (자바) – 파일 입출력 원리 1. 파일 객체를 만든다. 2. 해당 파일을 열어 읽는다. (+읽은 내용 알아서 처리, 어디다 쓰든지 문자열을 바꾸던지 … JAVA (자바) – 파일 입출력 원리 1. 파일 객체를 만든다. 2. 해당 파일을 열어 읽는다. (+읽은 내용 알아서 처리, 어디다 쓰든지 문자열을 바꾸던지 뭐 맘대로 하면 된다.) 3. 파일을 닫는다. 1) 한 문자씩 읽기 p..
- Table of Contents:
티스토리
공지사항
블로그 메뉴
인기 글
최근 글
최근 댓글
태그
티스토리툴바
자바 파일 입출력 (txt파일 한 문자씩, 한 줄씩, 한 번에 읽기)
- Article author: jeong-pro.tistory.com
- Reviews from users: 39147 Ratings
- Top rated: 3.9
- Lowest rated: 1
- Summary of article content: Articles about 자바 파일 입출력 (txt파일 한 문자씩, 한 줄씩, 한 번에 읽기) 자바 파일 입출력. 원리. 1. 파일 객체를 만든다. 2. 해당 파일을 열어 읽는다. (+읽은 내용 알아서 처리, 어디다 쓰든지 문자열을 바꾸던지 뭐 … …
- Most searched keywords: Whether you are looking for 자바 파일 입출력 (txt파일 한 문자씩, 한 줄씩, 한 번에 읽기) 자바 파일 입출력. 원리. 1. 파일 객체를 만든다. 2. 해당 파일을 열어 읽는다. (+읽은 내용 알아서 처리, 어디다 쓰든지 문자열을 바꾸던지 뭐 … 자바 파일 입출력 원리 1. 파일 객체를 만든다. 2. 해당 파일을 열어 읽는다. (+읽은 내용 알아서 처리, 어디다 쓰든지 문자열을 바꾸던지 뭐 맘대로 하면 된다.) 3. 파일을 닫는다. 1) 한 문자씩 읽기 1 2 3 4 5..
- Table of Contents:
‘JavaJAVA’ Related Articles
태그
티스토리툴바
See more articles in the same category here: https://toplist.maxfit.vn/blog/.
06-02 파일 입출력
이번에는 파일을 이용한 입출력 방법에 대해서 알아 보자.
파일 쓰기
다음의 예제를 작성해 보자.
import java.io.FileOutputStream; import java.io.IOException; public class Sample { public static void main(String[] args) throws IOException { FileOutputStream output = new FileOutputStream(“c:/out.txt”); output.close(); } }
위 예제를 실행해 보면 c:/ 디렉토리 바로 밑에 새로운 파일(out.txt)이 하나 생성되는 것을 확인할 수 있을 것이다.
※ 맥(Mac)이나 유닉스에서 실행할 경우 c:/ 디렉터리가 없으므로 디렉터리명을 적절하게 변경하여 실행하도록 하자.
파일을 생성하기 위해 FileOutputStream 클래스를 사용했다. FileOutputStream 객체를 생성하기 위해서는 생성자의 입력으로 파일명을 넘겨주어야 한다. 위 예제에서는 경로를 포함하여 c:/out.txt 라는 파일명을 생성자의 입력으로 전달하였다.
위의 예에서보면 output.close() 라는 문장이 있는데 이것은 사용한 파일 객체를 닫아주는 것이다. 사실 이 문장은 생략해도 된다. 왜냐하면 자바 프로그램이 종료할 때 사용한 파일 객체를 자동으로 닫아주기 때문이다. 하지만 직접 사용한 파일을 닫아주는 것이 좋다. 사용했던 파일을 닫지 않고 다시 사용하려고 할 경우에는 오류가 발생하기 때문이다.
FileOutputStream
이번에는 생성하는 파일에 내용을 적어 보자.
import java.io.FileOutputStream; import java.io.IOException; public class Sample { public static void main(String[] args) throws IOException { FileOutputStream output = new FileOutputStream(“c:/out.txt”); for(int i=1; i<11; i++) { String data = i+" 번째 줄입니다.\r "; [[MARK]]output.write(data.getBytes());[[/MARK]] } output.close(); } } InputStream과 마찬가지로 OutputStream 역시 바이트 단위로 데이터를 처리하는 클래스이다. FileOutputStream은 OutputStream클래스를 상속받아 만든 클래스인데 바이트 단위로 데이터를 처리하게끔 되어 있다. FileOutputStream에 값을 쓸 때는 byte배열로 써야 하므로 위와같이 String을 byte배열로 바꾸어 주는 getBytes() 메서드를 이용했다. \r 은 줄바꿈 문자이다. ※ 유닉스인 경우는 만 있으면 된다. 윈도우즈의 경우 \r 처럼 \r 문자를 추가해야 노트패드 같은 에디터에서 줄바꿈이 제대로 표시되어 보인다. FileWriter 문자열을 파일에 쓸 때에는 FileOutputStream이 좀 불편하다. String을 byte배열로 변환해야 하기 때문이다. 좀 더 편리한 방법은 없을까? 다음의 예제를 보도록 하자. import java.io.FileWriter; import java.io.IOException; public class Sample { public static void main(String[] args) throws IOException { [[MARK]]FileWriter fw = new FileWriter("c:/out.txt");[[/MARK]] for(int i=1; i<11; i++) { String data = i+" 번째 줄입니다.\r "; [[MARK]]fw.write(data);[[/MARK]] } fw.close(); } } 위처럼 FileOutputStream 대신에 FileWriter를 이용하면 byte 배열 대신 문자열을 사용할수 있어 편리하다. PrintWriter 하지만 FileWriter를 사용하더라도 \r 을 문자열 뒤에 덧 붙여야 하는 불편함은 여전히 남아있다. 이런 불편함을 해소하려면 FileWriter대신 PrintWriter를 사용하면 된다. PrintWriter를 이용하면 \r 을 덧붙이는 대신 println 이라는 메써드를 사용할 수 있다. 다음은 PrintWriter를 이용하여 파일을 작성하는 예제이다. import java.io.IOException; import java.io.PrintWriter; public class Sample { public static void main(String[] args) throws IOException { [[MARK]]PrintWriter pw = new PrintWriter("c:/out.txt");[[/MARK]] for(int i=1; i<11; i++) { String data = i+" 번째 줄입니다."; [[MARK]]pw.println(data);[[/MARK]] } pw.close(); } } 위의 프로그램을 다음의 프로그램과 비교해 보자. for(int i=1; i<11; i++) { String data = i+" 번째 줄입니다."; System.out.println(data); } 두 프로그램의 차이점은 data를 출력시키는 방법이다. 두 번째 방법은 우리가 지금껏 계속 사용해 왔던 콘솔 출력 방법이고 첫 번째 방법은 콘솔대신에 파일로 출력하는 방법이다. 차이점이 금방 눈에 들어 올 것이다. System.out 대신에 PrintWriter의 객체를 사용한 차이가 있을 뿐이다. 위의 프로그램을 실행하면 c:/out.txt 파일이 생성된다. 파일에 어떤 내용이 저장되었는지 확인 해 보자. [out.txt의 내용] 1 번째 줄입니다. 2 번째 줄입니다. 3 번째 줄입니다. 4 번째 줄입니다. 5 번째 줄입니다. 6 번째 줄입니다. 7 번째 줄입니다. 8 번째 줄입니다. 9 번째 줄입니다. 10 번째 줄입니다. 두 번째 방법을 사용했을 때 콘솔에 출력될 내용이 파일에 고스란히 들어가 있는 것을 알 수 있다. 파일에 내용 추가하기 프로그램을 만들다 보면 파일에 내용을 쓰고 난 후에 또 새로운 내용을 추가하고 싶을 때가 생긴다. 이럴 경우에는 이미 작성된 파일을 다시 추가모드로 열어서 추가내용을 작성해야 한다. 다음의 예제를 보자. import java.io.FileWriter; import java.io.IOException; public class Sample { public static void main(String[] args) throws IOException { FileWriter fw = new FileWriter("c:/out.txt"); for(int i=1; i<11; i++) { String data = i+" 번째 줄입니다.\r "; fw.write(data); } fw.close(); FileWriter fw2 = new FileWriter("c:/out.txt"[[MARK]], true[[/MARK]]); // 파일을 추가 모드로 연다. for(int i=11; i<21; i++) { String data = i+" 번째 줄입니다.\r "; fw2.write(data); } fw2.close(); } } fw2 객체는 FileWriter("c:/out.txt", true) 와 같이 두번째 파라미터를 추가로 전달하여 생성했다. 두번째 boolean 입력 파라미터는 파일을 추가모드(append)로 열것인지에 대한 구분값이다. 파일을 추가모드로 열면 기존파일의 내용을 덮어쓰지 않고 이후부터 파일이 쓰여진다. 위 예제를 실행하면 out.txt 파일에 내용이 추가되는 것을 확인할 수 있을 것이다. 만약 FileWriter대신 PrintWriter를 이용하고 싶은 경우에는 다음과 같이 변경해야 한다. import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; public class Sample { public static void main(String[] args) throws IOException { PrintWriter pw = new PrintWriter("c:/out.txt"); for(int i=1; i<11; i++) { String data = i+" 번째 줄입니다."; pw.println(data); } pw.close(); [[MARK]]PrintWriter pw2 = new PrintWriter(new FileWriter("c:/out.txt", true));[[/MARK]] for(int i=11; i<21; i++) { String data = i+" 번째 줄입니다."; pw2.println(data); } pw2.close(); } } PrintWriter를 사용할 경우에는 생성자의 파라미터로 파일명 대신 추가모드로 열린 FileWriter의 객체를 전달해야 한다. 파일 읽기 이번에는 파일을 읽는 방법에 대해서 알아보자. 다음의 예제를 작성해 보자. import java.io.FileInputStream; import java.io.IOException; public class Sample { public static void main(String[] args) throws IOException { byte[] b = new byte[1024]; FileInputStream input = new FileInputStream("c:/out.txt"); input.read(b); System.out.println(new String(b)); // byte 배열을 문자열로 변경하여 출력 input.close(); } } 파일을 읽기 위해서는 위 예처럼 FileInputStream 클래스를 이용한다. 다만 byte 배열을 이용하여 파일을 읽어야 하기 때문에 읽어야 하는 정확한 길이를 모를 경우에는 좀 불편한 방법이다. 위 예에서는 1024 바이트를 읽도록 코딩했다. ※ 바이트 배열을 문자열로 변경할 때는 new String(바이트배열) 처럼 사용하여 변경한다. 만약 파일을 라인단위로 읽을 수 있다면 훨씬 편리할 것이다. 다음과 같이 예제를 수정해 보자. [[MARK]]import java.io.BufferedReader;[[/MARK]] import java.io.FileReader; import java.io.IOException; public class Sample { public static void main(String[] args) throws IOException { [[MARK]]BufferedReader br = new BufferedReader(new FileReader("c:/out.txt"));[[/MARK]] while(true) { String line = [[MARK]]br.readLine()[[/MARK]]; if (line==null) break; // 더 이상 읽을 라인이 없을 경우 while 문을 빠져나간다. System.out.println(line); } br.close(); } } 위 예처럼 FileInputStream 대신 FileReader와 BufferedReader의 조합을 사용하면 라인단위로 파일을 읽을 수 있다. BufferedReader의 readLine 메소드는 더이상 읽을 라인이 없을 경우 null을 리턴한다.
[Java] 자바 파일 입출력 (txt파일로 저장 및 읽어오기)
File 클래스
Java.io패키지에서 제공하는 File클래스는 파일 크기, 파일 속성, 파일 이름 등의 정보를 얻어내는 기능과 파일 생성 및 삭제 기능을 제공하고 있습니다. 그리고 디렉토리를 생성하고 디렉토리에 존재하는 파일 리스트를 얻어내는 기능도 있습니다. 이번 포스팅에서는 이 File클래스와 출력스트림을 활용하여 텍스트(txt)파일을 생성해보고 이것을 입력스트림을 활용하여 읽어오는 예제를 한번 만들어보도록 하겠습니다.
1. txt 파일로 데이터 저장하기
package InputOutputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; public class OutputSTreamEX { public static void main(String[] args) { try { OutputStream output = new FileOutputStream(“D:/Eclipse/Java/Output.txt”); String str =”오늘 날씨는 아주 좋습니다.”; byte[] by=str.getBytes(); output.write(by); } catch (Exception e) { e.getStackTrace(); } } }
2. txt 파일 불러오기
package InputOutputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; public class InputStreamEx { public static void main(String[] args) { try{ //파일 객체 생성 File file = new File(“D:/Eclipse/Java/Output.txt”); //입력 스트림 생성 FileReader file_reader = new FileReader(file); int cur = 0; while((cur = file_reader.read()) != -1){ System.out.print((char)cur); } file_reader.close(); }catch (FileNotFoundException e) { e.getStackTrace(); }catch(IOException e){ e.getStackTrace(); } } }
성능 향상을 위한 고민 (Buffer 활용하기)
프로그램의 성능은 로직에따라서 얼마든지 달라질 수가 있습니다. 아무리 하드웨어가 좋아도 소프트웨어가 구리다면 좋은 성능의 프로그램이 나올 수 없습니다. 소프트웨어에서의 입출력도 마찬가지입니다. 개발자라면 좀 더 효율적으로 입출력을 할 수 있는 방법을 고민해보아야합니다. 속도를 향상 시키는 방법 중 하나로 버퍼를 사용하는 방법이 있을 수 있겠는데요. 예를들어 프로그램은 직접 하드디스크에서 데이터를 가져오지않고 메모리 버퍼로 데이터를 가져오는 방식으로 읽는 속도를 향상 시킬 수 있습니다. 그리고 버퍼는 데이터가 쌓이기를 기다렸다가 꽉차게되면 한번에 읽는 방식으로 입력 횟수를 줄여줍니다.
1. BufferedOutputStream을 활용한 txt 파일로 데이터 저장하기
Buffered OutputStream과 BufferedWriter은 프로그램에서 전송한 데이터를 내부 버퍼에 쌓아두었다가 버퍼가 꽉차면, 버퍼의 모든 데이터를 한꺼번에 보냅니다. 프로그램 입장에서 보면 직접 데이터를 보내는것이 아니라, 메모리 버퍼로 데이터를 고속 전송하기 떄문에 실행 성능이 향상되는 효과를 보게됩니다.
package InputOutputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; public class OutputBufferedStreamEX { public static void main(String[] args) throws IOException { BufferedOutputStream bs = null; try { bs = new BufferedOutputStream(new FileOutputStream(“D:/Eclipse/Java/Output.txt”)); String str =”오늘 날씨는 아주 좋습니다.”; bs.write(str.getBytes()); //Byte형으로만 넣을 수 있음 } catch (Exception e) { e.getStackTrace(); // TODO: handle exception }finally { bs.close(); } } }
2. BufferedInputStream을 활용한 txt 파일 불러오기
BufferedInputStream과 BufferedReader은 입력 소스로부터 자신의 내부 버퍼 크기만큼 데이터를 미리 읽고 버퍼에 저장해둡니다. 프로그램은 외부의 입력 소스로부터 직접 읽는 대신 버퍼로부터 읽음으로써 읽기 성능이 향상되는 효과를 얻을 수 있습니다.
package InputOutputStream; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; public class InputStreamEx { public static void main(String[] args) throws IOException { try { // 바이트 단위로 파일읽기 String filePath = “D:/Eclipse/Java/Output.txt”; // 대상 파일 FileInputStream fileStream = null; // 파일 스트림 fileStream = new FileInputStream( filePath );// 파일 스트림 생성 //버퍼 선언 byte[ ] readBuffer = new byte[fileStream.available()]; while (fileStream.read( readBuffer ) != -1){} System.out.println(new String(readBuffer)); //출력 fileStream.close(); //스트림 닫기 } catch (Exception e) { e.getStackTrace(); } } }
[JAVA] 자바 파일입출력, 폴더 내 파일 읽기 예제
반응형
* 파일 읽기, 파일 복사, 파일 쓰기, 폴더 내 파일 읽기, FileReader, FileWriter, BufferedReader, BufferedWriter
* java 기본 기능으로 파일 내용을 읽고, 새로운 파일에 쓰는 방법 작성
(작성 후 ctrl+o로 자동 import 필수)
* 로컬에서 실행하는 로컬 폴더 기준으로 작성 (서버에서 실행 시 path를 서버 폴더 path로 해야 함)
* 특정 폴더 내 특정 문자열이 포함되지 않은 파일 찾기, 특정 문자열 2개 포함된 파일 찾기 등 아주 가끔 쓰긴 함.
ex) 가 없는 파일 찾기, include 가 2개 이상 들어간 파일 찾기
1. 자바 프로젝트 생성 및 test.java 파일 생성
* eclipse > File 탭 > New > Other > Java > Java Project 생성
* src 내 자바파일 생성
* 소스는 try catch로 묶자
try { // 아래 내용 }catch(Exception e){ e.printStackTrace(); }finally{ }
2. 읽을 파일 SET
1) 특정 1개 파일 읽기
String path = “C:\\dev\fileSearch\\”; String fileNm = “FileSearch.xml”; // 파일 객체 생성 File file = new File(path + fileNm);
2) 폴더 내 파일 모두 읽기
String path = “C:\\dev\fileSearch\\”; // 폴더 내 파일 객체 배열 생성 File folder = new File(path); File[] fileList = folder.listFiles();
* 폴더 내 파일 검색일 경우, 아래 내용을 객체 배열의 for문 안에 작성하면 된다.
for( File file : fileList ){ if( file.isFile() && file.canRead() ){ // 파일이 파일인지? && 읽을 수 있는지? // 아래 내용 } }
3. 파일 읽기 (FileReader/BufferedReader)
// 파일 입력스트림 생성 FileReader fileReader = new FileReader(file); // 입력 버퍼 생성 BufferedReader bufferedReader = new BufferedReader(fileReader); // 읽기 수행 String line = “”; String result = “”; int cnt = 0; while( (line = bufferedReader.readLine()) != null ){ // 파일 내 문자열을 1줄씩 읽기 while if( line.contaions(“찾을 문자열”) ){ // 찾고자하는 문자열이 있을 때 작성 result += line + ”
“; // 한줄씩 읽어 결과에 추가 cnt++; // 찾을 문자열이 몇개 포함되었는지 체크 } }
4. 파일 쓰기 (FileReader/BufferedReader)
// copy 폴더에 새로운 파일 생성 File newFile = new File(path + “copy\\” + fileNm); // 파일 출력스트림 생성 FileWriter fileWriter = new FileWriter(newFile); // 출력 버퍼 생성 BufferedWriter bufferedWriter = new BufferedWriter(fileWriter); // 파일 출력 if ( !result.isEmpty() ){ bufferedWriter.writer(result); } // 폴더 내 읽기 for문이면 여기서 닫아주는게 좋음 bufferedWriter.flush(); bufferedWriter.close();
4. for문 마지막 or write 후 or finally에 close 작성
fileReader.close(); bufferedReader.close(); bufferedWriter.close();
5. 실행 (Ctrl+F11)
* 안되면 Run > Run As > Java application
* 작성한 폴더에 원하는 문자열을 찾아 파일이 카피된다.
그리드형
So you have finished reading the 자바 파일 입출력 topic article, if you find this article useful, please share it. Thank you very much. See more: 자바 파일 입출력 스트림, 자바 파일 읽고 쓰기, 자바 파일 읽기, 자바 파일 쓰기, 자바 파일 열기, 자바 txt 파일 저장, 자바 텍스트 파일 읽어서 배열에 저장, 자바 파일 생성