Java编程那些事儿110——网络编程小结
13.4 中文问题
网络传输进程中的中文问题也较量突出,呈现该问题的原因和前面IO部门先容的一致,都是由于传输进程中客户端措施和处事器端措施回收的字符集纷歧致,在办理该问题以前首先举办如下的思考:
是否在网络中必然要传输中文字符?
从前面的示例中可以看出,通过必然的协议名目设计,可以制止在网络中传输中文字符,这样就从基本上制止了中文问题的呈现。譬喻在措施中需要传输“乐成”、“失败”这样的中文字符串,在协议中可以约定命字0代表“乐成”、1代表“失败”,这样在网络上传输数字即可,在客户端和处事器端举办简朴的调动即可。
其实这也是设计网络协议时根基的设计能力,通过公道的利用该能力既可以淘汰网络传输的数据量,也可以从基础上制止网络传输进程中的中文问题。
假如必需在网络中传输中文字符,譬喻QQ中的谈天信息,这就需要使客户端措施利用的字符集编码和处事器端措施利用的字符集编码保持一致,这是中文问题办理的最根基的思路实现。
13.5 总结
关于Java语言的网络编程,本章先容了网络编程的相关基本常识,先容了Java语言中如何举办TCP和UDP名目标网络编程,并通过简朴的示例演示网络编程的根基利用,通过这些内容的先容将各人带入网络编程的大门,虽然需要完全把握网络编程,还需要举办许多费力卓越的事情,假如阅读本章内容较量轻松,还需要对付网络编程举办进阶的话,发起阅读《Java 2网络协议黑幕》一书。
13.6 网络操练
1、别离利用TCP方法和UDP方法,实现将客户端输入的阿拉伯数字转换为中文大写数字。
2、别离利用TCP方法和UDP方法,实现本章中先容的计较器示例,体会客户端和处事器端的成果分别以及框架实现。
3、设计一个简朴的措施,实现向处事器端上传文件,并实现文件在处事器端的存储。
4、阅读P2P网络的相关常识,实现一个P2P的谈天措施。