다음 코드는 cmd
에서 명령을 실행하고 명령 줄의 출력을 사용하여 텍스트 파일을 생성합니다. 아래 코드는 Eclipse의 출력 창에 올바른 정보를 보여 주지만 마지막 줄은 텍스트 파일에만 인쇄됩니다. 아무도 이것으로 나를 도울 수 있습니까?텍스트 파일에 여러 줄 쓰기 (java)
import java.io.*;
public class TextFile {
public static void main(String[] args) throws IOException {
try {
Process p = Runtime.getRuntime().exec("git log");
BufferedReader in = new BufferedReader(
new InputStreamReader(p.getInputStream()));
BufferedWriter writer = null;
String line = null;
while ((line = in.readLine()) != null) {
writer = new BufferedWriter(new FileWriter("textfile.txt"));
writer.write(line);
System.out.println(line);
writer.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
이 파일을 덮어 씁니다. Writer를 루프 외부에 선언하고 루프 후에 닫습니다. (Btw, 당신의 코드는 읽기가 매우 어려우며, 다음 번에는 일관된 들여 쓰기를 따라하십시오.) – qqilihq
** 요즘 ** Java의 새로운 IO 라이브러리를 사용해야합니다. 'NIO'라고 불린다. 핵심 클래스는'Paths','Path','Files'입니다. 예를 들어'Paths.get ("filename")'을 사용하여 파일을 찾거나'Files.write (pathToFile, stuffToWrite, options)'를 사용하여 파일에 쓸 수 있습니다. – Zabuza