文件编程

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

基本函数操作:

1)打开/创建文件

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

2)读文件

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

3)写文件

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

  发送、接收文件

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

Linux 文件编程、时间编程基本函数的更多相关文章

  1. Linux 应用层的时间编程【转】

    转自:https://blog.csdn.net/chinalj2009/article/details/21223681 浅析 Linux 中的时间编程和实现原理,第 1 部分: Linux 应用层 ...

  2. 浅析 Linux 中的时间编程和实现原理一—— Linux 应用层的时间编程【转】

    本文转载自:http://www.cnblogs.com/qingchen1984/p/7007631.html 本篇文章主要介绍了"浅析 Linux 中的时间编程和实现原理一—— Linu ...

  3. Linux文件的时间

    关于Linux文件的ctime.atime和mtime等几个时间的介绍,推荐<Linux的3个文件时间>比较不错,这篇文章已经介绍的比较全面了,但是本文对它做进一步的解释,并对一些情况进行 ...

  4. Linux 下的时间编程总结

    在嵌入式编程中中.常常须要输出系统的当前时间.计算程序的运行时间.使用计时器等.近期也做了不少关于时间的操作.今天就认真总结一下,部分内容是在网上看到的.自己经过验证总结出来. 1.时间的类型 1.格 ...

  5. linux文件时间的查看和改动touch

    1. linux文件的时间 linux下文件时间主要有以下三种: 1.1 modification time(mtime) 文件改动时间.即文件内容的改动时,更新这个时间.不包含文件权限和属性的改动. ...

  6. 修改linux文件的mtime

    一.  Linux 文件个时间信息 所有Unix 文件系统中的文件或文件夹有三个时间戳,分别为atime.ctime和mtime. atime 表示最后一次访问(仅仅访问,没有改动)文件的时间: mt ...

  7. LINUX下C语言编程调用函数、链接头文件以及库文件

    LINUX下C语言编程经常需要链接其他函数,而其他函数一般都放在另外.c文件中,或者打包放在一个库文件里面,我需要在main函数中调用这些函数,主要有如下几种方法: 1.当需要调用函数的个数比较少时, ...

  8. UNIX高级环境编程(5)Files And Directories - 文件相关时间,目录文件相关操作

     1 File Times 每个文件会维护三个时间字段,每个字段代表的时间都不同.如下表所示: 字段说明: st_mtim(the modification time)记录了文件内容最后一次被修改的时 ...

  9. linux环境下的时间编程

    Linux下提供了丰富的api以供开发者们处理和时间相关的问题.然而这些接口看似各自为政实则有有着千丝万缕的联系,在学习和时间中引发了各种各样的混乱.因此时间处理成为了许多Linux开发者的梦魇,遇到 ...

随机推荐

  1. 发布Qt Widgets桌面应用程序的方法(自定义进程步骤,用QT Creator直接生成)

    发布Qt Widgets桌面应用程序的方法 Qt是一款优秀的跨平台开发框架,它可以在桌面.移动平台以及嵌入式平台上运行.目前Qt 5介绍程序发布的文章帖子比较少.大家又非常想要知道如何发布Qt应用程序 ...

  2. QtStaticBuildScript(会有这么容易)

    https://github.com/dankrusi/QtStaticBuildScript

  3. maven项目或者SpringBoot项目启动时报错在本地仓库中找不到jar包的解决办法

    经常遇到项目检出来后是导入开发工具eclipse中pom文件出错问题,项目启动时遇到了一些列的jar包找不到的问题,所以换个开发平台到IDEA以为会好些,结果同样的问题还是会出现的,为了找到具体的解决 ...

  4. C语言实现常用排序算法——基数排序

    #include<stdio.h> #include<math.h> #define SIZE 10 #define C_SIZE 20 /*行数稳定=10,切记!列数务必搞的 ...

  5. kubernetes实战篇之nexus oss服务器部署及基于nexus的docker镜像仓库搭建

    系列目录 Nexus oss仓库管理平台搭建 Nexus是一款仓库管理工具,支持Npm,bower,maven,nuget,apt,yum甚至docker,helm等各种仓库,说的通俗以下,就是私服镜 ...

  6. vue结合Ant Design实现后台系统的权限分配(支持无限子级嵌套)

    最近公司的业务需要,要做一个后台管理系统的管理系统类似于这样子 功能需求如下: 左边是权限菜单,右边对应的是具体权限. 1.父级权限菜单选中,父级权限菜单的权限包括其中所有子级权限菜单的权限也要选中, ...

  7. iOS App开发的那些事儿2:如何搭建合适的框架

    <iOS App开发的那些事儿>系列文章从更宏观的角度出发,不仅仅局限于具体某个功能.界面的实现,而是结合网易云信iOS端研发负责人多年的经验,从如何优化现有代码的角度出发,深度分析如何创 ...

  8. 【设计模式】行为型02模板方法模式(Template Method Patten)

    五一长假,没有出去,不喜欢嘈杂的人群,玩了会游戏发泄了下憋在心底的戾气,手旁大马克杯里是母亲泡的绿茶.点开自己的播放列表,耳机里传来的是理查德克莱德曼的致爱丽丝.自己是个凡人,卑微渺小的活着.不说废话 ...

  9. idea初见问题整理_错误: -source 1.5 中不支持 diamond 运算符

    最近在移动工程到idea下,顺便改目录结构,遇到的问题不一定全部记录,有些答案摘抄自别人博客,已注明来源,由于不是摘抄自同一作者,且有自己的一些内容,所以标注为原创. 1.(错误: -source 1 ...

  10. Java学习笔记——Socket实现文件传输

    我越是逃离,却越是靠近你. 我越是背过脸,却越是看见你. 我从你开始, 我在你结束. 需求:实现局域网下socket传输文件. 客户端步骤: 1.建立与服务器的连接 2.创建client输出流 3.创 ...