readUTF()的问题

mldxs 2008-10-16 03:48:55
我的文件内容
===========================
JAVA
php
编程真TMD闹心
===========================


File file = new File("F://io//io.txt") ;
RandomAccessFile raf = new RandomAccessFile(file , "rw") ;
String str = raf.readUTF() ;
System.out.println(str);


============================
Exception in thread "main" java.io.EOFException
at java.io.RandomAccessFile.readFully(RandomAccessFile.java:383)
at java.io.DataInputStream.readUTF(DataInputStream.java:592)
at java.io.RandomAccessFile.readUTF(RandomAccessFile.java:887)
at tio.RandomFileTest.main(RandomFileTest.java:44)
============================

这是怎么回事啊 ?
...全文
766 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
以梦为马 2008-10-16
  • 打赏
  • 举报
回复
java.io.EOFException 到达文件或流的末尾,读过头了。



ouyangxiaokang6 2008-10-16
  • 打赏
  • 举报
回复
这是你的文件读到末尾的异常,判断一下再输出就可以了。

File file = new File("C:\\0.txt");
try {
RandomAccessFile raf = new RandomAccessFile(file, "rw");
System.out.println("begin:" + raf);
while (raf.read()!=-1) {
String str = raf.readUTF();
System.out.println(str);
}
} catch (Exception e) {
e.printStackTrace();
}

mldxs 2008-10-16
  • 打赏
  • 举报
回复
使用readLine()倒是可以读出
但是也读出了很多乱码
mldxs 2008-10-16
  • 打赏
  • 举报
回复
没有尝试用readLine()
为什么readUTF()不可以呢 ?
nine_suns99 2008-10-16
  • 打赏
  • 举报
回复
用readLine不行么?

62,614

社区成员

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

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