在java中如何从数组列表和文本文件中删除元素?
我有一个arraylist,它从一个文本文件中获取元素,如果我从arraylist中删除一些元素,它们也应该从文件中删除,我该怎么做?在java中如何从数组列表和文本文件中删除元素?,java,file,arraylist,io,Java,File,Arraylist,Io,我有一个arraylist,它从一个文本文件中获取元素,如果我从arraylist中删除一些元素,它们也应该从文件中删除,我该怎么做? 我在某个地方读到我应该使用临时文件,但我不知道怎么做。您应该有包装器类来保存ArrayList和对文件的引用。 在包装器类中有load、delete等方法 我刚刚给了大家一个很高的评价 您可以重新写入/修改文件/创建tmp文件,将org file重命名为.bk并将tmp file重命名为org file-根据您的需求和组织文件的结构,有很多方法可以做到这一点。您
我在某个地方读到我应该使用临时文件,但我不知道怎么做。您应该有包装器类来保存ArrayList和对文件的引用。 在包装器类中有load、delete等方法 我刚刚给了大家一个很高的评价
您可以重新写入/修改文件/创建tmp文件,将org file重命名为.bk并将tmp file重命名为org file-根据您的需求和组织文件的结构,有很多方法可以做到这一点。您需要做的是将数组列表中的新元素复制到一个新文件中,或者只需复制和替换原始文件中的数据,例如,您有一个包含数据的文件并且您有一个数组列表,该列表与文件具有相同的数据,因此,如果更改数组列表中的元素,请复制并再次替换该文件:
class <className>
{
List arrayList;
File file;
//you should initialize the file and the arraylist first
public void reWrite()
{
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)));
for(Object object : arraylist)
{
bw.write(object);
}
bw.close();
}
}
class <className>
{
List arrayList;
File file;
//you should initialize the file and the arraylist first
public void reWrite()
{
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)));
for(Object object : arraylist)
{
bw.write(object);
}
bw.close();
}
}