텍스트 파일에서 문자열을 삭제하고 싶습니다. 나는 이것을하기 위해 임시 파일이 필요하다는 것을 알았다. list.txt 파일을 읽고 문자열을 삭제하고 싶습니다. 검색하고자하는 파일이 이미 만들어지고 채워져 있습니다. 다른 게시물을 보았습니다.이 파일을 내 개인 프로젝트에 맞게 수정하려고합니다. 현재 내가 가지고 :텍스트 파일에서 문자열 삭제 Android - 파일 IO
package com.nullwall.listmanager;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
public class IPR3Activity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
DoWork("TestString");
}
public void DoWork(String deleteFromFile)
{
try{
String delete = deleteFromFile;
String line;
//locates a new file named list.txt
File root = new File(Environment.getExternalStorageDirectory(),"projects");
File file = new File(root, "list.txt");
//creates buffers
BufferedReader bufferedReader = new BufferedReader(new FileReader(file.getAbsolutePath()));
StringBuffer stringBuffer = new StringBuffer();
//Loads list.txt into bufferedReader, deletes line and moves on
while ((line = bufferedReader.readLine()) != null)
{
if (line.equals(deleteFromFile))
{
line.replace(deleteFromFile, "");
stringBuffer.append("\n");
}
else
{
stringBuffer.append(line);
stringBuffer.append("\n");
}
}
//Entire file has now been loaded into memory
//creates new Filewriter, append to false, rewrites list.txt with stringBuffer minus string
FileWriter writer = new FileWriter(file, false);
writer.write(stringBuffer.toString());
System.out.println("file written");
//closes writer
writer.flush();
writer.close();
}
catch (FileNotFoundException ex) {
ex.printStackTrace();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
}
I는 다음과 같이 임의의 문자열을 List.txt 파일이 있습니다 실행 한 후
notstring
notstring
notstring
teststring
notstring
notstring
아무 일도 발생하지 않습니다. 나는 이와 같이 File IO를하기에 상당히 새로운 것이므로 놓친 것 같은 간과하지 마십시오. 고맙습니다! 문자열 버퍼에 파일을 저장
내 게시물을 귀하의 제안과 함께 편집했습니다 ... 아직 아무것도 편집되지 않았습니다. 코드를 올바르게 작성하고 있습니까? 내 사고 과정에 의견을 추가했습니다. – PeterL