java把控制台输入的文本追加到文本文件中

F盘有这样一个文件:abc.txt,里面包含了部分文字,如“这是文件中已包含了的文字”;现在想实现从控制台输入文本,并将其追加到这个文件内容后面而不是替换原来的内容,如何... F盘有这样一个文件:abc.txt,里面包含了部分文字,如“这是文件中已包含了的文字”;现在想实现从控制台输入文本,并将其追加到这个文件内容后面而不是替换原来的内容,如何实现,求指教。 展开
 我来答
黑色幽默1943
推荐于2017-11-25 · 超过14用户采纳过TA的回答
知道答主
回答量:27
采纳率:0%
帮助的人:23万
展开全部
/**
* 从控制台接收用户输入的数据,并存储在磁盘上
* @param filePath
*/
static void userPrint(String filePath){
BufferedReader br = null;
BufferedWriter bw = null;
try{
//通过System.in返回一个InputStream对象用于构造一个InputStreamReader对象
//再用来构造一个Buffered对象
br = new BufferedReader(new InputStreamReader(System.in));
bw = new BufferedWriter(new FileWriter(filePath,true)); //true表示是否追加
String str = br.readLine(); //接收用户输入
while(!str.equals("exit")){ //如果用户输入exit则退出循环
bw.write(str); //将用户输入的字符串写入文件
bw.newLine(); //换行
bw.flush(); //刷新缓冲区,将缓冲区的字符写入磁盘!
str = br.readLine(); //继续接收输入
}
}
catch(FileNotFoundException e){
System.out.println(e.getMessage());
}
catch(IOException e){
System.out.println(e.getMessage());
}
finally{
try {
bw.close(); //关闭对象前会调用bw.flush();
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
wozmaini303
2012-03-19
知道答主
回答量:5
采纳率:0%
帮助的人:3.3万
展开全部
package pracitce;

import java.io.IOException;
import java.io.RandomAccessFile;

public class test {

public static void main(String[] args) throws IOException{
RandomAccessFile raf = new RandomAccessFile("f:/abc.txt","rw");
raf.seek(raf.length());
//.....进行输入
//raf.write();
//raf.writeInt()
//raf.writeChar(' ');
//....
raf.close();

}

}
是不是这个意思?我是新童鞋,不知道有没误解
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
子木火韦
2012-03-19
知道答主
回答量:33
采纳率:100%
帮助的人:7.5万
展开全部
用io流,不要new新的File,控制台输入的文本读到里面不就ok啦?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式