Linux 文件编程、时间编程基本函数
文件编程
文件描述符 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 文件编程、时间编程基本函数的更多相关文章
- Linux 应用层的时间编程【转】
转自:https://blog.csdn.net/chinalj2009/article/details/21223681 浅析 Linux 中的时间编程和实现原理,第 1 部分: Linux 应用层 ...
- 浅析 Linux 中的时间编程和实现原理一—— Linux 应用层的时间编程【转】
本文转载自:http://www.cnblogs.com/qingchen1984/p/7007631.html 本篇文章主要介绍了"浅析 Linux 中的时间编程和实现原理一—— Linu ...
- Linux文件的时间
关于Linux文件的ctime.atime和mtime等几个时间的介绍,推荐<Linux的3个文件时间>比较不错,这篇文章已经介绍的比较全面了,但是本文对它做进一步的解释,并对一些情况进行 ...
- Linux 下的时间编程总结
在嵌入式编程中中.常常须要输出系统的当前时间.计算程序的运行时间.使用计时器等.近期也做了不少关于时间的操作.今天就认真总结一下,部分内容是在网上看到的.自己经过验证总结出来. 1.时间的类型 1.格 ...
- linux文件时间的查看和改动touch
1. linux文件的时间 linux下文件时间主要有以下三种: 1.1 modification time(mtime) 文件改动时间.即文件内容的改动时,更新这个时间.不包含文件权限和属性的改动. ...
- 修改linux文件的mtime
一. Linux 文件个时间信息 所有Unix 文件系统中的文件或文件夹有三个时间戳,分别为atime.ctime和mtime. atime 表示最后一次访问(仅仅访问,没有改动)文件的时间: mt ...
- LINUX下C语言编程调用函数、链接头文件以及库文件
LINUX下C语言编程经常需要链接其他函数,而其他函数一般都放在另外.c文件中,或者打包放在一个库文件里面,我需要在main函数中调用这些函数,主要有如下几种方法: 1.当需要调用函数的个数比较少时, ...
- UNIX高级环境编程(5)Files And Directories - 文件相关时间,目录文件相关操作
1 File Times 每个文件会维护三个时间字段,每个字段代表的时间都不同.如下表所示: 字段说明: st_mtim(the modification time)记录了文件内容最后一次被修改的时 ...
- linux环境下的时间编程
Linux下提供了丰富的api以供开发者们处理和时间相关的问题.然而这些接口看似各自为政实则有有着千丝万缕的联系,在学习和时间中引发了各种各样的混乱.因此时间处理成为了许多Linux开发者的梦魇,遇到 ...
随机推荐
- Android零基础入门第33节:Android事件处理概述
原文:Android零基础入门第33节:Android事件处理概述 通过对Android基本组件的学习,也有接触少部分Android的事件处理,比如按钮的点击事件.选框的状态切换事件. 一.Andro ...
- 领域驱动设计(DDD)的实践经验分享之ORM的思考
原文:领域驱动设计(DDD)的实践经验分享之ORM的思考 最近一直对DDD(Domain Driven Design)很感兴趣,于是去网上找了一些文章来看看,发现它确实是个好东西.于是我去买了两本关于 ...
- 一个 Qt 显示图片的控件(继承QWidget,使用QPixmap记录图像,最后在paintEvent进行绘制,可缩放)
Qt 中没有专门显示图片的控件,通常我们会使用QLabel来显示图片.但是QLabel 显示图片的能力还是有点弱.比如不支持图像的缩放一类的功能,使用起来不是很方便.因此我就自己写了个简单的类. 我这 ...
- spring通过注解方式依赖注入原理 (私有成员属性如何注入)
一.spring如何创建依赖的对象 用过spring的都知道我们在dao.service层加上@repository.@Service就能将这两个对象交给spring管理,在下次使用的时候使用@res ...
- linux dll hell--链接库real name, soname, link name
DLL hell 是指 Windows 系统上动态库的新版本覆盖旧版本,且新版本不能兼容旧版本的问题. 例如:装新软件,但原有的软件运行不起来了. Linux 系统下也同样面临着和 Windows ...
- C语言实现常用排序算法——冒泡排序
原理:比较临近的两个元素,只要不符合顺序就进行交换:要点:1.不要越界:2.遍历一遍以后最大的元素就会到最后,所以下次遍历就不用遍历整个数组 void bubble_sort(int a[],int ...
- 30411MySQL安装与配置_win10
1 下载 1.1下载地址 下载地址 https://downloads.mysql.com/archives/community/ 1.2 选择适合自己的版本并下载 1.3 将下载文件解压至自定义路 ...
- 【JAVA】我的爬虫
简介:不是很智能的爬虫,效率慢,仅用作自娱自乐,需要观察目标网站的页面然后修改相关正则去获取自己想要的数据 环境:需要Http-client相关jar包,如下,可以去我的下载链接下载: https:/ ...
- kubernetes实战篇之helm安装
系列目录 Helm是kubernetes的应用包管理工具,是CNCF孵化器下的一个项目,主要用来管理 Charts.类似于 Ubuntu 中的 APT 或 CentOS 中的 YUM.它提供了一种简单 ...
- 使用docker启动mysql
安装docker 查询mysql版本, docker search mysql 拉取指定版本的镜像 docker pull NAME 启动镜像, 第一次启动最少需要指定MYSQL_ROOT_PASSW ...