首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

求答疑~从socket中获取数据流(InputStream)后,为何还需要转成DataInputStream,才能保存到硬盘中

2013-10-31 
求答疑~从socket中获取数据流(InputStream)后,为什么还需要转成DataInputStream,才能保存到硬盘中?如题,请

求答疑~从socket中获取数据流(InputStream)后,为什么还需要转成DataInputStream,才能保存到硬盘中?
如题,请解释为什么要进行如下的操作,
         netIn = acceptfilesocket.getInputStream();
         in = new DataInputStream(new BufferedInputStream(netIn));
谢谢!

代码如下:

socket acceptfilesocket;
InputStream netIn = null;
InputStream in = null;
try
{
         netIn = acceptfilesocket.getInputStream();
         in = new DataInputStream(new BufferedInputStream(netIn));
} catch (IOException e1)
{
         System.out.print("接收文件创建网络接受流接受服务器文件数据异常");
}
javasocket InputStream? DataInputStream BufferedInputStream
[解决办法]
DataInputStream
只是起到包装的目的,提供更多的方法功能,让你从socket中更加方便的读取流的数据。
[解决办法]
不用转也可以写文件的,只是我们有时候为了高效,会封装一层缓冲流。缓冲流比字节流效率高很多的
[解决办法]
如果是文件的话,建议用BufferedReader替换DataInputStream
[解决办法]
主要是进行了封装,这样可以更好的利用。

热点排行