我在外部文件中的格式是
name
tel no
mob no
address
从gui我想删除一个使用我的删除按钮的上述格式的联系人。
我已完成导出方法,并想知道删除是否类似,这是我的导出代码。
{
FileOutputStream file;
PrintStream out;
try { file = new FileOutputStream("../files/example.buab", true);
out = new PrintStream(file);
out.println(txtname.getText());
out.println(txtnum.getText());
out.println(txtmob.getText());
out.println(txtadd1.getText());
System.err.println ("");
out.close();
}
catch (Exception e)
{
System.err.println ("Error in writing to file");
}
}
答案 0 :(得分:1)
你真的必须立即删除文件中的联系人吗?
通常你会做这样的事情:
尝试删除文件中的单行要容易得多......
答案 1 :(得分:0)
最简单的方法是完全读取它,跳过应该删除的行,然后将其完全写回文件,从而覆盖原始文件。但这也是效率最低的方式。为获得最佳效果,您需要在模型中更多地组织数据。
为什么不使用(嵌入式)数据库,以便您可以继续使用简单的SQL DELETE
语句?
答案 2 :(得分:0)
我假设你真的必须使用一个文件而不能在数据库中使用表。
首先,您必须为每个联系人分配一个ID,以便您可以指向某个联系人,该ID必须是唯一的,而不是它可以是一切。
为什么不将该文件组织为xml?这是你的规范允许的吗?