2012-05-02 6 views
3

내 앱 (Android)에서 파일을 만듭니다. 이 파일에는 상황에 따라 한 줄씩 추가합니다. 그런 다음 서버별로 한 줄씩 데이터를 보냅니다. 모든 전송이 확인되면 나는이 같은 파일을 삭제 :파일에서 행 삭제 (Android/java)

fos_kasowanie_pliku = openFileOutput(FILENAME, Context.MODE_PRIVATE); 
fos_kasowanie_pliku.write("".getBytes()); 
fos_kasowanie_pliku.close(); 

내가 서버에이를 보낸 후 단 1 라인 (첫 번째)를 삭제할 수 있습니까? 이 줄이없는 파일을 다시 작성해야한다는 것을 알았습니다. 더 나은 해결책이 있습니까?

답변

2

줄을 사용하지 않고 파일을 다시 쓰는 것이 유일한 방법입니다. 파일을 다시 작성하지 않고 파일의 시작을 제거 할 수있는 메커니즘은 없습니다.

5

데이터베이스를 사용하여 레코드를 추가 한 다음 서버로 데이터를 보내고 원하는 순서대로 레코드를 삭제할 수 있습니다. 일반 오래된 파일과 달리 데이터베이스는 설명하는 문제를 정확하게 처리하도록 설계되었습니다.

+0

+1 : 좋은 제안. – RichieHindle

+0

@ RichieHindle : 감사합니다! – lenik

0

필자는 rewirite 파일을 제거하는 것이 유일한 해결책이라고 생각합니다. 또는 SqLite과 같은 데이터베이스를 사용해보십시오. 쉽게 레코드를 삭제할 수 있습니다.