내가 만든 기능에 약간의 문제가 있습니다. 나는이 함수에 문자열을 줄 때마다 동일한 파일의 새 줄을 구할 것이지만 실제로는 마지막 문자열 만 저장한다고합니다. 그것은 또 다시 덮어처럼, BufferedWriter의 예를 들어 도움BufferedOutputStream 여러 줄 파일에 쓰기
public void WritingGZFile(String directory, String linesWithPattern, String newFile) throws IOException
{
newFile = directory + '\\' + newFile;
BufferedOutputStream out = new BufferedOutputStream(new GZIPOutputStream(new FileOutputStream(
newFile)));
out.write(linesWithPattern.getBytes());
out.write("\r\n".getBytes());
out.close();
}
을 필요로하는 것은 그렇게하는 데 도움이 개행 문자라고하는 방법이 있습니다.
하지만 GZIPOutputStream 클래스를 사용하고자하므로 BufferedOutputStream이 필요합니다.
어떻게해야할까요? 감사합니다 ypu
새 FileOutputStream (newFile, true)을 사용하여 다시 쓰지 않고 추가하도록 지시하면 어떻게됩니까? – ControlAltDel
BufferedOutputStream을 사용할 때, 당신은 그것을 닫기 전에'out.flush()'을 사용해야합니다. – Ascalonian
@Ascalonian'close()'하면'flush()'할 필요가 없습니다. – eckes