java如何根据指定字符串删除文本文件中的相应一行

急!... 急! 展开
 我来答
198901245631
推荐于2016-03-17 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1730万
展开全部
可以通过BufferedReader 流的形式进行流读取,之后通过readLine方法获取到的内容,之后通过if判断出符合条件的重写如新文件,不符合的直接舍弃即可。
举例:
BufferedReader bre = null;
OutputStreamWriter pw = null;//定义一个流
try {
String file = "D:/test/test.txt";
bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流
pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//确认流的输出文件和编码格式,此过程创建了“test.txt”实例
while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环
{
if(str.indexOf("排除")<0){//判断是否需要舍弃
pw.write(str);//将要写入文件的内容,可以多次write
}
}
bre.close();//关闭流
pw.close();//关闭流
备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
平均分成
2014-05-30 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:214
采纳率:0%
帮助的人:116万
展开全部
用io流读一行,判断长度,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JulioHu706
2014-05-30 · TA获得超过653个赞
知道小有建树答主
回答量:789
采纳率:0%
帮助的人:432万
展开全部
能说的详细一点吗?比如,这个指定字符串跟文本中相应一行要有什么联系才可以删除呢?
更多追问追答
追问
是一行的开头几个字符串
追答
相等?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式