基于 Linux 的文件操作 网络编程的最后一环

Linux下万物皆文件

在了解了客户端和服务器的函数调用之后,我们只需要了解下文件操作就能编写出属于自己的客户端和服务器了,还能让他们进行通信。

这个内容其实是很简单的,所以博主就不再做过多的讲解

打开文件

#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>

int open(const char *path, int flag);

第一个参数: const char *path:
				文件名的字符串地址

第二个参数: int flag:
				文件打开模式

返回值:
		成功:返回文件描述符
		失败:-1

下面是关于第二个参数 flag 可能的产量值即含义:
在这里插入图片描述

关闭文件

#include<unistd.h>

int close(int fd);

int fd: 需要关闭的文件或套接字的文件描述符

成功:0
失败:-1

将数据写入文件

#include<unistd.h>

ssize_t write(int fd, const void *buf, size_t nbytes);

第一个参数 int fd 
			显示数据传输对象的文件描述符

第二个参数 const void *buf 
			保存要传输数据的缓冲地址值

第三个参数 size_t nbytes
			要传数据的字节数

提示:
size_t 是通过 typedef 声明的 unsigned int 类型
ssize_t 就是 typedef 声明的 signed int

读取文件中的数据

	与之前的 write 函数对应, read 用来接受数据

读取文件中的数据

#include<unistd.h>

ssize_t read(int fd, void *buf, size_t nbyres);

第一个参数 int fd 
			显示数据接收对象的文件描述符

第二个参数 void *buf
			保存接收数据的缓冲地址值

第三个参数 size_t nbytes
			要接收数据的最大字节数

成功: 返回就收的字节数(但遇到文件结尾则返回0)
失败: -1
	那么下面我们就可以来看看服务器端和客户端的代码了

在这里插入图片描述
在这里插入图片描述
客户端:
在这里插入图片描述

相信大家再看这些代码已经是毫无压力,所以我们的一个服务器端服务一个客户端的网络编程就到这里差不多结束了(最后讲完半关闭就可以进行完结了)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值