作者bemyself (self)
看板java
标题[问题]关於DataOutputStream类别的使用
时间Mon Jan 31 07:08:36 2011
(A)就是先用File class开一个档案
(B)再用FileOutputStream class以(A)为参数开一个让该档能被写入资料的物件
(C)最後用DataOutputStream class以(B)为参数开一个能写出资料的物件
==================================================================
我发现我在做的时候有几个问题:
1.顺利写入後用记事本开来看 每个字元的左右都会被加上一个我没有要加的空白
2.好像没法用.writeChars()或.writeChar()方法把\n的效果写入档案?那能做到吗?
要怎嚜做呢?
3.要用.close()方法把(B),(C)的物件关闭时好像不能在try-catch之後的finally区块做
但会要用finally不就是希望不管有没抓到例外都能让想要或需要执行的程式码被执行
吗?(因为一旦抓到就会直接跳出来)还是我有错的地方?否则的话为何只有把close()动
作也写在try里才能过,不然会被JVM说"symbol not found",然後'^'指着(B)(C)中我开
的物件(我用J Creator)
以上,1和2是我下意识里觉得满麻烦的事,而3应该是技术性的问题
而1是我认为造成最大困扰的 因为格式都不对了 也有空间很浪费的感觉
虽然知道有其他眼下看来更好用的工具可用 但我是想一方面练习 一方面也很想知道-->
这个DataOutputStream class若是真这麽不方便 用他干麽呢? 有什麽事是他features的?
以上 希望有有力量的人能为小弟解惑!!!!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.239.241
1F:→ uziel:强烈建议去看 Java 的 API doc ,去 Oracle 官网找或者用 01/31 08:32
2F:→ uziel: java platform api 作为关键字喂 Google ,Java API doc 01/31 08:35
3F:→ uziel:有各种内建类别的说明,应该可以解决 1 与 2 的问题 01/31 08:37
4F:→ uziel:没记错的话,类别名称以 Stream 结尾的都是用来读写 binary 01/31 08:43
5F:→ uziel:资料,而结尾是 Reader 或 Writer 的类别用来读写字串 01/31 08:46
6F:→ uziel:至於问题 3 ,因为 try 、 catch 、 finally 都不是同一个 01/31 08:49
7F:→ uziel:区块,在 try 里面宣告的变数自然不能在 finally 找到 01/31 08:51
8F:→ bemyself:use bytearray,q1 solved,but q2 still can't;q3 almost 02/02 11:20