关于读取文件的问题,请教!

sgdb 2003-06-19 10:06:06
String f = "/123.txt";
InputStream in = f.getClass().getResourceAsStream(f);
int i = in.available();

以上三行代码用于读123.txt的内容,在j2se下可以的,拿到j2me下,就读不出来了,我把i打印出来为0,请各位帮帮忙啊,该如何解决?
...全文
33 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jax 2003-06-19
  • 打赏
  • 举报
回复
对搂主的这个问题,我很感兴趣,我谈谈我的看法:
1:在j2se里(我用的是 1.3.1 和 1.4.1-b21),InputStream是个抽象类,available()方法总是返回 0 ;而程序运行时,实际调用的是BufferedInputStream类的available()方法,它是实现了可以得到实际值的,所以可以得到总字节数。
2:在j2me里(我用的是J2ME Wireless Toolkit 1.0.4_01),InputStream依然是个抽象类,available()方法也总是返回 0 ;而整个j2me的IO包里,只有InputStream,DataInputStream,ByteArrayInputStream三个类有available()方法,其中InputStream,DataInputStream始终会返回 0 ,而只有ByteArrayInputStream有实际的返回。根据实际情况看,系统应调用的是DataInputStream的available()方法,所以总是得到 0 字节数。

kreven 2003-06-19
  • 打赏
  • 举报
回复
ME不懂,只能帮你顶一下了,呵呵。
teddyku 2003-06-19
  • 打赏
  • 举报
回复
前两行没错,可是第三行似乎有问题
为什么不用read的方法?

不过楼上的真实强人啊,搞的这么清楚,今天又学了一招,以后还多教教我了 :)

13,100

社区成员

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

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