为了账号安全,请及时绑定邮箱和手机立即绑定

Java Socket应用---通信是这样练成的

难度初级
时长 2小时 0分
学习人数
综合评分9.77
496人评价 查看评价
9.9 内容实用
9.8 简洁易懂
9.6 逻辑清晰

已采纳回答 / 安静_天空
因为你想读取每一行所显示的内容(文字内容)。如果你用字节流输出,那么得到的结果会是一些字节码,然而你并不一定想得到字节码,你想得到的可能是文本内容,如果容内中存在汉字,你可能会得到乱码,一个汉字占用两个字节~字节流的输入输出都是以字节为基本单位的,即都是0101这样的东西。BufferedReader的缓冲作用主要是为了读写内容时更高效。

已采纳回答 / 半边口袋
其实只需要关闭socket , 与socket相关的流都会被自动关闭.

已采纳回答 / Leimans_
数据表并不是真的表, 只是一个sql文件, 文件里保存的数据表创建的sql语句, 可以放到数据库中执行sql语句来创建对应的表

已采纳回答 / 散落凡尘的雨
其实是一样的,只不过表现的形式不同。192.168.56.1转化成字节数组就是[-64,-88,56,1],具体转化:byte为8字节192太大所以表示不成正数的192就表示成-64,其余的都是同理,56可以表示成56。(至于为什么要表示成-64,原因是在计算机中存储的数都是补码,-64的补码与192的补码相同都是11000000所以可以这样存储)。

已采纳回答 / SoyaDokio
这是一种正确、严谨的写法。验证非NULL是编码中很重要的一环。假如本来就是NULL,这是调用各自的close()方法是会报错的。如果在实例化这些对象时出错导致这些对象为NULL,或是实例化没问题但中途出了什么异常导致这些对象为NULL,都会在未经验证非NULL前尝试调用close()方法关闭时报错。p.s. 讲师写socket关闭条件时写的是if(socket!=null)socket.close();这样写没错,但我想说一般是另一种写法if(!socket.isClosed())socket.close...

已采纳回答 / SoyaDokio
看报错应该以下3种可能:服务端没能正常启动;服务端和客户端设置的连接端口不一致;端口受限。

已采纳回答 / 果子李
你把源代码贴一下啊。可能是你port设置有问题。或者你客户端的socket没close

已采纳回答 / 果子李
那就有可能你读取的目标url中,多一些代码。这些代码就是你登陆的用户信息

已采纳回答 / LynnShaw
未指定端口号时,getport()返回-1如果要返回默认端口号,使用public int getDefaultPort()Gets the default port number of the protocol associated with this URL. If the URL scheme or the URLStreamHandler for the URL do not define a default port number, then -1 is returned

已采纳回答 / current_bp
首先不知道你是什么意思,如果byte类型,其最大值是127,超过最大值,就是越界,有可能变成负数,short类型的最大值是2^15-1,这个应该不会出错,不知道是不是你的类型错误。。。错将string类型赋值给short了。。。

已采纳回答 / weibo_馥小郁_0
你client.java里应该是shutdownOutputStream()  你打成输入流把输入流关闭了

已采纳回答 / 惫懒sloth
首先InetAddress.getLocalHost() 这个方法返回的就是byte[]数组,这个没法改。其次ipv4是4个0-255间的整数组成的,byte是1字节8 位,正好满足(2的8次方=256),所以用byte去接是合适的。但由于java中没有unsigned的类型,所有数都是带有正负位的,所以最高位的 1 将会被解释为符号位,另外 Java 中存储是按照补码存储,如果是地址中一个是135,转二进制 1000 0111 ,这会被java认为是补码形式,转换成原码便是 1111 0001,转换成十...
课程须知
本课程是 Java 开发课程的高级课程,需要对 Java 中的面向对象、IO、多线程,以及网络相关知识有一定的基础
老师告诉你能学到什么?
1、网络相关的基础知识 2、Java 中网络相关 API 的应用 3、实现基于 TCP 的 Socket 编程 4、实现基于 UDP 的 Socket 编程

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消