当前位置: 首页 > news >正文

什么网站找厂做袜子注册公司网上申请入口

什么网站找厂做袜子,注册公司网上申请入口,网站关键词排名提高,小程序免费制作平台用借助TCP完成文件的传输#xff0c;基本思路如下#xff1a; 发送方#xff08;客户端#xff09;向服务端发送文件名#xff0c;服务端保存该文件名。接收方#xff08;服务端#xff09;向客户端返回一个消息ok#xff0c;确认文件名保存成功。发送方#xff08;客户…借助TCP完成文件的传输基本思路如下 发送方客户端向服务端发送文件名服务端保存该文件名。接收方服务端向客户端返回一个消息ok确认文件名保存成功。发送方客户端收到消息后开始向服务端发送文件数据。接收方服务端读取文件内容写入到之前保存好的文件中。 首先获取文件名。借助os包中的stat()函数来获取文件属性信息。在函数返回的文件属性中包含文件名和文件大小。Stat参数name传入的是文件访问的绝对路径。FileInfo中的Name()函数可以将文件名单独提取出来。 func Stat(name string) (FileInfo, error) type FileInfo interface {Name() string Size() int64 Mode() FileMode ModTime() time.Time IsDir() bool Sys() interface{} }发送端 package mainimport (fmtionetos )func sendFile(conn net.Conn, filePath string) {// 只读打开文件f, err : os.Open(filePath)if err ! nil {fmt.Println(os.Open err:, err)return}defer f.Close()// 从本文件中读数据写给网络接收端。 读多少写多少。原封不动。buf : make([]byte, 1024)for {n, err : f.Read(buf)if err ! nil {if err io.EOF {fmt.Println(发送文件完成。)} else {fmt.Println(os.Open err:, err)}return}// 写到网络socket中_, err conn.Write(buf[:n])if err ! nil {fmt.Println(conn.Write err:, err)return}} }func main() {list : os.Args // 获取命令行参数if len(list) ! 2 {fmt.Println(格式为go run xxx.go 文件绝对路径)return}// 提取 文件的绝对路径filePath : list[1]//提取文件名fileInfo, err : os.Stat(filePath)if err ! nil {fmt.Println(os.Stat err:, err)return}fileName : fileInfo.Name()// 主动发起连接请求conn, err : net.Dial(tcp, 127.0.0.1:8000)if err ! nil {fmt.Println(net.Dial err:, err)return}defer conn.Close()// 发送文件名给 接收端_, err conn.Write([]byte(fileName))if err ! nil {fmt.Println(conn.Write err:, err)return}// 读取服务器回发的 OKbuf : make([]byte, 1024)n, err : conn.Read(buf)if err ! nil {fmt.Println(conn.Read err:, err)return}if ok string(buf[:n]) {// 写文件内容给服务器——借助connsendFile(conn, filePath)} }接收端 package mainimport (fmtnetos )func recvFile(conn net.Conn, fileName string) {// 按照文件名创建新文件f, err : os.Create(fileName)if err ! nil {fmt.Println(os.Create err:, err)return}defer f.Close()// 从 网络中读数据写入本地文件buf : make([]byte, 1024)for {n, _ : conn.Read(buf)if n 0 {fmt.Println(接收文件完成。)return}// 写入本地文件读多少写多少。f.Write(buf[:n])} }func main() {// 创建用于监听的socketlistener, err : net.Listen(tcp, 127.0.0.1:8000)if err ! nil {fmt.Println( net.Listen err:, err)return}defer listener.Close()fmt.Println(接收端启动成功等待发送端发送文件)// 阻塞监听conn, err : listener.Accept()if err ! nil {fmt.Println( listener.Accept() err:, err)return}defer conn.Close()// 获取文件名保存buf : make([]byte, 1024)n, err : conn.Read(buf)if err ! nil {fmt.Println( conn.Read err:, err)return}fileName : string(buf[:n])// 回写 ok 给发送端conn.Write([]byte(ok))// 获取文件内容recvFile(conn, fileName) }
http://www.pierceye.com/news/888577/

相关文章:

  • 意大利之家设计网站什么是软件开发技术
  • 下载flash网站国外域名备案
  • 网站建设服务费应计入什么科目装饰公司简介内容
  • 淘宝客网站域名备案吗漂亮的ppt模板大全免费
  • 西安外贸网站开发网站后端做留言板功能
  • 自建淘宝客APP网站模板制作网站的公司
  • 最佳线上网站制作模板网站开发 企业 定制系统
  • 怎么将网站设置为首页百度seoo优化软件
  • iis6建设网站浏览wordpress显示在线人数
  • 一键制作单页网站女做受网站
  • 网站推广广告 优帮云开发公司资质哪里查
  • 沈阳网站建设思路做海报的话网站
  • 扬州网站建设suteng崇左网页设计
  • 中文网站模板html做网站 最好的开源cms
  • 个人资料展示网站网站建设网络推广外包服务商
  • 外贸网站建设有什么需要注意的吗网站建设职业发展前景
  • 企业网站建设方案效果版权WordPress
  • 做网站知道访客ip汝州文明建设网站
  • 吴江建设局网站打不开了网站备案信息地址
  • 长沙网站建设优化局域网网站架设软件
  • 重庆企业网站建设解决方案seo关键词怎么优化
  • 信誉好的大良网站建设做的好的ppt下载网站有哪些
  • 栖霞网站定制手机网站图片自适应代码
  • 企业网站管理中心网站海外推广
  • 书店商城网站设计万网虚拟主机做网站教程
  • 文化类网站是不是休闲娱乐类网站wordpress插件 ftp
  • 织梦系统网站吉林省建设安全厅官方网站
  • 网站推广网站关键词排名怎么做建站教程wp
  • 用织梦系统做网站产权网站建设需要掌握什么技术
  • 南宁seo平台费用安徽网站关键词优化排名