java如何用socket接受和发送数组

在client/server程序里,如何用socket发送和接受数组,比如byte型数组。怎样能像C语言里read一样,把收到的存入一个char数组,以及write把数组... 在client/server程序里,如何用socket发送和接受数组,比如byte型数组。怎样能像C语言里read一样,把收到的存入一个char数组,以及write把数组写入socket

readLine这个应该不行吧,好像是用于读字符串的:
in = new DataInputStream(client.getInputStream());
String s=in.readLine();
展开
 我来答
zhongtyler
2015-08-13 · TA获得超过4408个赞
知道大有可为答主
回答量:4384
采纳率:79%
帮助的人:931万
展开全部
这个是个伪命题,socket可以发送数组,但只能是byte数组,所有的String,或者别的什么都必须转换为byte数组才可能发送。
所以如果你是byte数组,直接send就可以了。 如果你是别的,不管是不是数组,都必须通过转换的方式变成byte数组。转换常见的方式有两种,字符串的话 getByte()就可以了。其他类型需要转换成字符串再getByte,或者进行序列化操作。
小洪洪1984
2012-01-02 · 超过13用户采纳过TA的回答
知道答主
回答量:78
采纳率:0%
帮助的人:25.7万
展开全部
输入:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(baos);
输出就对应的写吧(in),这是针对byte数组的输入输出流,读取后强制类型转换成char,最后要关闭。还不明白就去看看io类里面的方法,或者看看马士兵的j2se的教程
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
defoewong
2012-01-09
知道答主
回答量:35
采纳率:0%
帮助的人:11万
展开全部
in = new DataInputStream(client.getInputStream());
String s = in.readUTF();
用这个试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式