如何将char[]转化为InputStream?

chechy 2002-09-16 08:32:50
不能用StringBufferInputStream,因为JDK1.3已经说了,这个类被弃用了。
也不能用ByteArrayInputStream,因为char[]中有中文,改为byte会破坏中文的。
实际上,我是通过request.getReader()获得的数据,然后读出到char[]中,现在是写文件,读文件,这个方法我觉得太土,能不能有更好的方法?
...全文
341 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chechy 2002-09-17
  • 打赏
  • 举报
回复
花了两天的时间换装了Oracle,这下好了,一切都恢复正常了。直接用request.getInputStream()就OK了。
Interbase,我已经在你身上栽了两次,一次是Delphi,这次是JBuilder,但愿不要栽第三次。
再次感谢各位的回答。
xiao_yuer 2002-09-16
  • 打赏
  • 举报
回复
另外,改为byte会破坏中文也没有任何道理。
byte[] b = new String(char[] value).getBytes("GBK").如果你的char是以GBK编码的这样转化为byte数组不就可以了么?!如果是其他编码方式,你就换成其他的不就行了?
xiao_yuer 2002-09-16
  • 打赏
  • 举报
回复
InputStream、OutputStream是基于字节的,Reader、Writer是基于字符,都提供char[]类型的参数读或写。
你要读些文件,FileReader、FileWriter都很方便。
或者用RandomAccessFile,它实现了DataInput, DataOutput可以处理任何基本类型,当然就包括char了,你的char数组,做个循环轻松搞定。
远太狼 2002-09-16
  • 打赏
  • 举报
回复
CharArrayReader如何?
chechy 2002-09-16
  • 打赏
  • 举报
回复
那个InputStream是基于字符的?要知道JDK的Help和MSDN差远了,我要是知道,我就不问了。
另,我是在写servlet,但不是jsp。
namowen 2002-09-16
  • 打赏
  • 举报
回复
为什么不用基于字符的流呢?Reader和Writer中都有相应的方法:
read(char buffer[])和write(char buffer[])。
feyu2000 2002-09-16
  • 打赏
  • 举报
回复
你在那使用JSP?

62,614

社区成员

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

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