计算机网络daytime实现之java/python/c++版本
daytime介绍
有一个有用的调试工具就是daytime服务。它的作用就是返回当前时间和日期,格式是字符串格式。
基于TCP的daytime服务
daytime服务是基于TCP的应用,服务器在TCP端口13侦听,一旦有连接建立就返回ASCII形式的日期和时间,在传送完后关闭连接。接收到的数据被忽略。
基于UDP的daytime服务
daytime服务也可以使用UDP协议,它的端口也是13,不过UDP是用数据报传送当前时间的。接收到的数据被忽略。
daytime之java实现
代码
/*** Ubuntu下编写自己的DAYTIME客户端,并在互联网上找一个DAYTIME服务器连接,* 验证结果,打印代码和运行的输出结果。* www.unpbook.com*/
import java.io.*;
import java.net.*;
public class daytimetest {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubString sHostName;/** Get the name of the server from the command line. No entry,use* tock.usno.navy.mil*/if(args.length>0){sHostName = args[0];}else{//"www.time.ac.cn" 或 "time.nist.gov"sHostName = "time.nist.gov";}/** Opeb a socket to port 13. Prepare to receive the Daytime information.*/try{Socket oSocket = new Socket(sHostName,13);InputStream oTimeStream =oSocket.getInputStream();StringBuffer oTime = new StringBuffer();// Fetch the Daytime information.int iCharacter;while((iCharacter = oTimeStream.read()) != -1){oTime.append((char)iCharacter);}// Convert Daytime to a String and output.String sTime = oTime.toString().trim();System.out.println("It's:" + sTime + "at " + sHostName + ".");oTimeStream.close();oSocket.close();}catch (UnknownHostException e){System.err.print(e);}catch (IOException e){System.err.print(e);}}
}
运行截图
daytime之python实现
代码
import socket
HOST = "time.nist.gov"
PORT = 13
client = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
try:client.connect((HOST,PORT))data = client.recv(1024)#字节转字符串time = str(data,encoding='utf-8')print("the server's time is:",time)
except Exception as e:print('Error!')
运行截图
daytime之c++实现
代码是从unpbook.com上下载的,已上传到我的github:传送门
编译过程可以参考https://blog.csdn.net/michael_kong_nju/article/details/43272195
运行截图
服务端
客户端
注意事项
在ubuntu下编译该代码需要激活root模式,具体做法是,打开一个终端,输入
sudo passwd root
按照提示输入两遍一样的密码,设置root用户的密码,注意这个密码和开机密码不一样
如果已经激活,可以输入
su -
再输入你设置的密码就可以登录root用户,如果登录之后你不知道怎么进入指定文件夹,灵活运用pwd
(查看当前目录)和ls
(查看子目录),看终端的信息,一般root后需要cd Desktop
、cd home
、cd (yourusername)
之类的
按照上面的链接编译好之后,退出root模式可以用
exit
代码更新
daytime代码最新在我的githubhttps://github.com/inspurer/ComputerNetwork/tree/master/daytime%E6%9C%8D%E5%8A%A1
计算机网络daytime实现之java/python/c++版本相关推荐
- python网络爬虫课程设计题目_山东建筑大学计算机网络课程设计《基于Python的网络爬虫设计》...
山东建筑大学计算机网络课程设计<基于Python的网络爬虫设计> 山东建筑大学 课 程 设 计 成 果 报 告 题 目: 基于Python的网络爬虫设计 课 程: 计算机网络A 院 (部) ...
- java python算法_用Python,Java和C ++示例解释的排序算法
java python算法 什么是排序算法? (What is a Sorting Algorithm?) Sorting algorithms are a set of instructions t ...
- python3最新稳定版本-python稳定版本
广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 我应如何获取 python 的文档? 当前的 python 稳定版本的标 ...
- python主流版本-python主流版本
广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! pyenv 和 pipenv 应该是目前主流的 python 版本控制和虚拟环境的 ...
- python最高版本-python最新版
广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 一.图书名称:----python for dummies.pdf mysql c ...
- python最新版本是多少(python最新版)
python所有版本发布时间? Python的所有版本发布时间如下: Python3.3.2发布于2013年5月15日. Python3.2.5发布于2013年5月15日. Python3.1.5发布 ...
- python中文版下载安装教程,python最新版本安装教程
python下载安装教程 python下载安装教程:自定义安装目录,点击install进行安装,打开cmd窗口,输入python,显示python的版本,安装成功. Python语言更适合初学者,Py ...
- 初识python——python的发展历程及python各个版本之间的区别,python的安装
初识python--python的发展历程及python各个版本之间的区别,python的安装 什么是python python的起源 python主要发展历程 python各个版本之间的区别 如何选 ...
- android毕业设计——基于Android+Java+Python的手机端办公自动化OA系统设计与实现(毕业论文+程序源码)——办公自动化OA系统
基于Android+Java+Python的手机端办公自动化OA系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于Android+Java+Python的手机端办公自动化OA系统设计与实 ...
最新文章
- Java 时间和日期类型的 Hibernate 映射
- php发布产品隐藏显示,php – 在WooCommerce中隐藏基于产品类型的付款方式
- mysql workbench 在模板与数据库间同步
- 【大话数据结构算法】冒泡排序
- python3默认的代码编码是什么-Python3 到底什么是字符编码
- 关于在WinForm里用HttpWebRequest获得某个页面,并填写页面的textbox及点击button的方法...
- vivado global和out-of-context 选项
- gdb 7.X 下载编译(aarch64)
- 《创新者的窘境》读书笔记
- 40个笑到抽筋的神回复,哈哈哈哈哈...
- dtools: error while loading shared libraries: libicui18n.so.55: cannot open shared object file
- 人民网首届内容科技大赛 视界云荣膺三甲晋级决赛
- python 实现复数计算器
- 基于Python的招聘信息可视化分析研究
- XAMP安装Apacher无法启动
- jquery DataTables 固定列(fixedcolumns)不生效问题
- windows执行cygwin慢问题
- ARCHS[@]: unbound variable
- 计算机网络05局域网
- JeecgBoot duplicateCheck 表单字段重复校验通用JS详细记录
热门文章
- Markdown基础总结
- 实现pygame自定义鼠标外形
- Openjudge NOI题库 ch0111/10 河中跳房子|NOIP2015 day2 stone
- 超全面的前端切图技巧,读这篇就够了
- 字母序列号生成 A...Z..AA..ZZ....
- Private,Public,Protected
- mysql查询专业术语,英语术语MySQL查询
- GAN网络详解(从零入门)
- linux 系统业务迁移,记录一次linux系统迁移过程
- 一篇“从入门到上手”的Solidworks机械设计教程