2013-03-23 3 views
0

나는이 작업에서 기존 줄의 마지막 글자 뒤에 어떻게 텍스트를 추가 할 수 있는지 알아 내려고 노력하고있다.텍스트 파일의 기존 줄에 텍스트 추가하기

기본적으로 나는 lineNumber과 내가 추가하고자하는 text을 정의 할 수 있기를 원합니다. 다른 유형의 작성자와 출력 스트림을 시도했지만이 중 하나도 지원하지 않는 것 같습니다.

임시 파일을 다시 작성하고 첨부 된 텍스트로 다시 작성해야합니까? 매우 귀찮은 것처럼 보입니까?

답변

0

당신은 java.io.RandomAccessFile을 사용할 수 있어야를 - 그것은 대규모 바이트 배열로 파일을 처리합니다. 이렇게하면 임의 액세스 방식으로 파일에 쓸 수 있습니다. 그러나 불행히도 삭제 및 삽입하지 마십시오. 즉, 다음을 의미합니다.

  • 주어진 줄에 자신을 배치하는 쉬운 방법은 없습니다.
  • 한 줄에 텍스트를 추가하면 다음 줄의 시작 부분을 덮어 씁니다.

당신의 동기는 밝혀지지 않았지만 다른 답변은 비슷한 문제가있는 사람들이 실제로 데이터베이스가 필요하다는 것을 나타냅니다.

또는 텍스트 파일을 필요한 데이터를 쉽게 읽을 수있는 데이터 구조로 읽은 다음 수행 한 후 파일을 디스크에 다시 쓸 수 있습니다.

-1

LineNumberReader 클래스를 java.io 패키지에서 사용하십시오. 귀하의 코스에 도움이 될 것입니다. 텍스트 파일에서 읽은 행 번호를 추적하는 메서드가있어서 텍스트 끝에 쉽게 연결할 수 있습니다. 이 샘플 코드 시도 :

LineNumberReader reader = new LineNumberReader(new FileReader("e:/abc.txt")); 
    String line = null; 
    while ((line = reader.readLine()) != null) { 
     int lineNumber = reader.getLineNumber(); 
     System.out.println(lineNumber + " - " + line); 
    } 
+0

필자는 'LineNumberReader'를 실제로 사용하고 있지만 추가 문제는 해결되지 않습니다. – JavaCake

+0

샘플 코드를 추가했습니다. 원하는대로 작동하는지 확인하십시오. –

+0

Ankur, 줄 등을 추출하는 방법을 알고 있습니다. 그러나 어떻게 그 특정 줄을 추가합니까? – JavaCake

관련 문제