English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 프로그램에서는 Java 텍스트를 기존 파일에 추가하는 여러 가지 기술을 배웁니다.
기존 파일에 텍스트를 추가하기 전에, 우리는src폴더에 이름이test.txt의 파일입니다.
이것은test.txt의 내용
This is a Test file.
import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import java.nio.file.StandardOpenOption; public class AppendFile { public static void main(String[] args) { String path = System.getProperty("user.dir") + "\\src\\test.txt"; String text = "Added text"; try { Files.write(Paths.get(path), text.getBytes(), StandardOpenOption.APPEND); } catch (IOException e) { } } }
프로그램을 실행할 때,test.txt파일에 포함된 내용:
This is a Test file.Added text
위 프로그램에서는 System의 user.dir 속성을 사용하여 변수에 저장된 현재 디렉토리 path를 가져옵니다. 확인Java 프로그램은 현재 디렉토리를 가져오기 위해更多信息。
또한 추가할 텍스트는 변수 text에 저장됩니다. 그런 다음 try 블록 내에서 추가합니다.-catch 블록 내에서는 Files의 write() 메서드를 사용하여 텍스트를 기존 파일에 추가합니다.
write() 메서드는 주어진 파일 경로, 파일에 쓰기할 텍스트 및 파일을 어떻게 열어 쓰기를 결정합니다. 우리의 예제에서는 APPEND 옵션을 사용하여 쓰기를 합니다.
write() 메서드는 IOException을 반환할 수 있으므로 try 블록을 사용합니다.-catch 블록을 통해 예외를 올바르게 잡습니다.
import java.io.FileWriter; import java.io.IOException; public class AppendFile { public static void main(String[] args) { String path = System.getProperty("user.dir") + "\\src\\test.txt"; String text = "Added text"; try { FileWriter fw = new FileWriter(path, true); fw.write(text); fw.close(); } catch(IOException e) { } } }
이 프로그램의 출력은 예제와1동일합니다.
위 프로그램에서는 FileWriter의 인스턴스(객체)를 사용하여 텍스트를 추가합니다(write() 메서드 대신 사용합니다)가 아니라 기존 파일에 텍스트를 추가합니다.
FileWriter 객체를 생성할 때, 파일 경로를 전달하고 두 번째 매개변수로 true를 전달합니다. true는 파일을 추가할 수 있음을 의미합니다.
그런 다음, write() 메서드를 사용하여 주어진 텍스트를 추가하고 파일 작성자를 닫습니다.