关于RandomAccessFile的几个问题

hmilybo 2003-11-13 11:13:29
我的问题是这样的:
要求不删除原文件的内容,而是接着写在后面,我选择了RandomAccessFile:
/*
* A.java
*/

import java.io.*;
public class A{
public static void main(String[] args)
throws IOException{
RandomAccessFile raf=new RandomAccessFile("a.txt","rw");
String astring="hello,"+"\n"+"world!";
raf.writeUTF(astring);//1.
//raf.write(astring.getBytes());//2.
}
}
我的要求是在a.txt里能显示换行
可是无论我是用1还是2的函数都无法正确显示
请指教!!!!!



...全文
24 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hmilybo 2003-11-14
  • 打赏
  • 举报
回复
哦~~~~~~~~~~~`
原来如此啊~~~~~

呵呵:)
谢谢!!!

我刚才查了一下书:\r是回车符,\n是换行符,
以前学c++的时候,都是用\n直接表示换行的,
比如下面例子中为什么用c++就可以呢:
#include<fstream>
#include<string>
using namespace std;

void main(){
string astring="good";
astring+="\n";
astring+=",boy";
ofstream of("1.txt");
of<<astring;
}

不懂!!:(

copyright 2003-11-14
  • 打赏
  • 举报
回复
这个说明你对系统不熟悉,在windows系统下,回车其实是"\r\n"的集合
在unix/linux系统下,回车才是单个'\n'的,有空多看看书吧,:)
hmilybo 2003-11-14
  • 打赏
  • 举报
回复
哪位大哥快来帮帮小弟啊!!!
我一直在等啊
:'(
hmilybo 2003-11-14
  • 打赏
  • 举报
回复
我刚才试了一下把第二个程序(c++)的"\n"换成"\r\n",运行之,结果和"\n"的一致,
我猜测:
在windows下,真正的换行是"\r\n"..
1.但为什么c++中的"\n"也可以换行呢?
2.为什么无论是java还是c++,在显示信息到屏幕上是,"\n"就直接可以表示换行,而不用"\r\n"
呢?


请高手不吝指教!!!!!


62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧