java 文件中删除一行(或某个字符)

我写了一个文本数据库,在写入时以#结束,可是我不想在数据库文件中保留这个#,请问我该怎样将这个字符,或者数据库文本中某句删除呢?谢了staticvoidwriteToFi... 我写了一个文本数据库,在写入时以#结束,可是我不想在数据库文件中保留这个#,请问我该怎样将这个字符,或者数据库文本中某句删除呢?谢了static void writeToFile(String path) //向文件中写入内容
{
String content;
BufferedReader bl=new BufferedReader(new InputStreamReader(System.in));
try
{
BufferedWriter bw1=new BufferedWriter(new FileWriter(path));
do
{
content=bl.readLine();
bw1.write(content);
bw1.newLine(); //输出一个换行符
}while(!content.equals("#")); //我想在这儿加一句用来删除#或者删除文本数据库中任意一行
bw1.flush();
bw1.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
展开
 我来答
千锋教育
2015-12-07 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部

用“”替换文件中的内容达到删除目的

import java.io.InputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.Scanner;
import java.io.FileNotFoundException;
import java.io.IOException;

public class zifutihuan
{
protected static void rep(String ch)
{
    BufferedReader bis = null;
    FileWriter bos = null;
    String s = null;
   try
   { 
     bis = new BufferedReader(new FileReader("1.txt"));
      bos = new FileWriter("2.txt");

while(null != (s = bis.readLine()))
   {

    s = s.replaceAll(ch,"");
    System.out.println(s);
    s= s+"\r\n";
    bos.write(s);
    }
 bos.close();
  bis.close();
  s = null;

}
catch(FileNotFoundException e)
{
System.out.println("未找到文件\n");
}
catch(IOException ee)
{
System.out.println("aaa");
}

}

public static void main(String args[])


rep("123");

}
}
匿名用户
推荐于2017-11-26
展开全部
while(!(content=bl.readLine()).equals("#")){
bw1.write(content);
bw1.newLine(); }//要在这里删除#,完全没必要,这样会浪费很多的资源,因为你还要重新的构造队path所指的文件的i/o,在修改里面的内容bw1.flush();
bw1.close();
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-08-26
展开全部
循环改成这样:while(!content.equals("#")){content=bl.readLine();
bw1.write(content);
bw1.newLine(); }bw1.flush();
bw1.close();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-08-26
展开全部
while的条件改成:!((content=bl.readLine()).equals("#"))用WHILE循环 不要DO
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式