加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux 文件编程、时间编程基本函数

发布时间:2020-12-13 22:35:39 所属栏目:Linux 来源:网络整理
导读:文件编程 文件描述符 fd ---数字(文件的身份证,代表文件身份),通过 fd 可找到正在操作或需要打开的文件。 基本函数操作: 1)打开/创建文件 int open ( const char * pathname, int flag,mode_t mode) 成功:返回文件的fd 失败:返回 - 1 文件路径 打开

文件编程

  文件描述符 fd --->>>数字(文件的身份证,代表文件身份),通过 fd 可找到正在操作或需要打开的文件。

基本函数操作:

1)打开/创建文件

int open (const char* pathname,int flag,mode_t mode) 成功:返回文件的fd 失败:返回-1 文件路径 打开标志 文件权限 eg: fd = open("/home/S3-app/test.c",O_RDWR|O_CREAT,0777);

2)读文件

ssize_t read(int fd,void *buf,ssize_t count) 成功:返回读取字节数 失败:-1 要读取的文件fd 读取的数据存到buf指向的空间 希望读取的字节数 int fd;    char buf[1024]; eg: read(fd,buf,1024);

3)写文件

ssize_t write(int fd,const void *buf,ssize_t count) 成功:返回写入字节数 失败:-1 要写入的文件fd 指向要写入的数据的位置地址 希望写入的字节数 int fd;    char buf[1024]; eg: write(fd,"hello",6);

?

  发送、接收文件

//发送文件内容    先把要发送d 文件数据读到buf中->再通过buf写入发送的目标文件中
            while((count=read(fd,(void *)buf,1024))>0)    //buf:读取来的数据存到buf指向的空间 希望读取的字节数 返回读取的字节数
 { write(new_fd,&buf,count); //&buf->整个数据数组 } close(fd);  

//接收文件内容    先把要接收的数据读到buf中->再通过buf写入接收文件中
            while((count=read(new_fd,1024))>0)//buf:读取来的数据存到buf指向的空间 希望读取的字节数 返回读取的字节数
 { write(fd,&buf,count);   //&buf->整个数据数组
         tmpsize += count;
         if(tmpsize == filesize) break
;
         }
         clode(fd);

?

Linux时间编程

/* time_t time(NULL) 日历时间--从标准时间到现在的秒数*/ time_t ctime = time(NULL);   //不保存数值地址
printf("%d",ctime); int型 /* struct tm *gmtime(time_t *ct) 格林威治时间--世界标准时间*/
/* struct tm *localtime(time_t *ct) 本地时间 (同上)*/
struct tm *tm;        //结构体
tm = gmtime(&ctime); printf("%d:%d",tm->tm_hour,tm->tm_min); struct tm*结构体 /* char* asctime(const struct tm *tm) 以字符串方式显示 */
char* asc; asc = asctime(tm); printf("%s",asc);   指针字符串

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读