linux的fwrite()使用方法,当前时间写入文本的程序
fwrite函数
1.函数功能
用来读写一个数据块。
2.一般调用形式
fwrite(buffer,size,count,fp);
3.说明
(1)buffer:是一个指针,对fread来说,它是读入数据的存放地址。对fwrite来说,是要输出数据的地址。
(2)size:要读写的字节数;
(3)count:要进行读写多少个size字节的数据项;
(4)fp:文件型指针
这是工作中用 fwrite函数写的例子,不仅记录下自己的学习情况,也分享给各位朋友这个fwrite函数实例。
这个fwrite实例是当前时间写入文本的程序,下面这个是fwrite函数的使用方法。
int markfile(void )
{
FILE *sp ;
// char buff[512] ;
char count = 0;
char *currentime = NULL;
char *wday[] = {"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};
time_t timep;
struct tm *p;
time(&timep);
p = localtime(&timep);
currentime = ctime(&timep);
// memset(buff,0,512);
// sprintf(buff,"%s",currentime);
printf("%d/%d/%d",(1900+p->tm_year),(1+p->tm_mon),p->tm_mday);
printf(" %s %d:%d:%d\n",wday[p->tm_wday],p->tm_hour,p->tm_min,p->tm_sec);
if((sp = fopen("/root/kay/mark.txt","a+")) == NULL)
return 0;
fwrite(currentime,size(currentime)-1,1,sp);
fclose(sp);
return 1;
}
size(currentime)( = 26 )的作用是得出指针currentime所指的字符串的个数(包括'\0'),但是会输出乱码(应该是字符串的个数太长了),因此,我把个数减掉一个,就能舒适正确结果。
用另外一种方法:
int markfile(void )
{
FILE *sp ;
char buff[512] ;
char count = 0;
char *currentime = NULL;
char *wday[] = {"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};
time_t timep;
struct tm *p;
time(&timep);
p = localtime(&timep);
currentime = ctime(&timep);
// memset(buff,0,512);
sprintf(buff,"%s",currentime);
printf("%d/%d/%d",(1900+p->tm_year),(1+p->tm_mon),p->tm_mday);
printf(" %s %d:%d:%d\n",wday[p->tm_wday],p->tm_hour,p->tm_min,p->tm_sec);
if((sp = fopen("/root/kay/mark.txt","a+")) == NULL)
return 0;
fwrite(currentime,(count = strlen(buff)),1,sp);
printf("%d\n",count);
fclose(sp);
return 1;
}
count = strlen(buff) 来获得字符的个数 结果是25,
综上的对比 觉得是fwrite()输出的字符不要包括结束符('\0'),否则会因为字符个数多了而造成乱码
看完的朋友,觉得对你们有帮助就顶一个,如果觉得哪里不好,可以发表下看法,共同学习。
linux的fwrite()使用方法,当前时间写入文本的程序的更多相关文章
- linux写系统服务的方法
linux写系统服务的方法 2.1 首先编写demo程序:hello.c<pre>#include <stdio.h> # chkconfig: 2345 10 90 main ...
- Linux 常用命令使用方法大搜刮(转)
1.# 表示权限用户(如:root),$ 表示普通用户 开机提示:Login:输入用户名 password:输入口令 用户是系统注册用户成功登陆后,可以进入相应的用户环境. 退出当前shel ...
- Linux 常用命令使用方法大搜刮
Linux 常用命令使用方法大搜刮 1.# 表示权限用户(如:root),$ 表示普通用户 开机提示:Login:输入用户名 password:输入口令 用户是系统注册用户成功登陆后,可以进入 ...
- [双系统linux] ----双系统切换导致系统时间错误
安装了linux双系统以后,发现每次双系统切换以后系统时间总会错误. 原因:Linux和win7(win10)双系统时间错误问题 时间相差8小时 MAC/linux 将系统硬件时间看待为UTC, 即U ...
- linux下定时执行任务的方法
linux下定时执行任务的方法 在LINUX中你应该先输入crontab -e,然后就会有个vi编辑界面,再输入0 3 * * 1 /clearigame2内容到里面 :wq 保存退出. 在LINUX ...
- (转)Linux I/O 调度方法
Linux I/O 调度方法 转自https://blog.csdn.net/theorytree/article/details/6259104 操作系统的调度有 CPU调度 CPU sche ...
- java面试Linux常用命令使用方法大全
1.# 表示权限用户(如:root),$ 表示普通用户 开机提示:Login:输入用户名 password:输入口令 用户是系统注册用户成功登陆后,可以进入相应的用户环境. 退出当前s ...
- Linux内核探索之路——关于方法
转载自:http://blog.chinaunix.net/uid-20608849-id-3014502.html Linux内核实践之路 -给那些想从Linux内核找点乐趣的人 一个不能回避的 ...
- Linux和win7(win10)双系统时间错误问题 时间相差8小时
转载自 http://m.2cto.com/os/201204/126212.html 有修改 前一段时间刚装了centos 5.4和win7的双系统.发现win7的系统时间不对,机子没上网,每天开机 ...
随机推荐
- SC命令(windows服务开启/禁用)
原文链接地址:https://blog.csdn.net/cd520yy/article/details/30976131 sc.exe命令功能列表: 1.更改服务的启动状态(这是比较有用的一个功能) ...
- NOIP2017 Day1 T3 逛公园(最短路+拓扑排序+DP)
神tm比赛时多清个零就有60了T T 首先跑出1起点和n起点的最短路,因为k只有50,所以可以DP.设f[i][j]表示比最短路多走i的长度,到j的方案数. 我们发现如果在最短路上的和零边会有后向性, ...
- 学习笔记:使用opencv做双目测距(相机标定+立体匹配+测距).
最近在做双目测距,觉得有必要记录点东西,所以我的第一篇博客就这么诞生啦~ 双目测距属于立体视觉这一块,我觉得应该有很多人踩过这个坑了,但网上的资料依旧是云里雾里的,要么是理论讲一大堆,最后发现还不知道 ...
- 解决html设置height:100%无效的问题
通常我们需要让自己的网页内容能够更好的适配各种屏幕大小,会采用height:100%,但是我们发现问题出来了,height:100%无效,其实解决办法很简单 解决:你只需要在css处添加上html, ...
- 2017国庆 清北学堂 北京综合强化班 Day1
期望得分:60+ +0=60+ 实际得分:30+56+0=86 时间规划极端不合理,T2忘了叉积计算,用解析几何算,还有的情况很难处理,浪费太多时间,最后gg 导致T3只剩50分钟,20分钟写完代码, ...
- 「LibreOJ β Round #4」框架
https://loj.ac/problem/527 题目描述 有一个n×m的矩形框架,但其中有些边被删除了.qmqmqm想知道剩余部分中还有多少完整的正方形.只有当一个正方形的每一条边均被保留下来, ...
- [Luogu 1351] NOIP2014 联合权值
[Luogu 1351] NOIP2014 联合权值 存图,对于每一个点 \(u\),遍历它的所有邻接点.以 \(u\) 为中转点的点对中,\((x,y)\) 的联合权值 \(w_x \cdot w_ ...
- elasticsearch ik中文分词器的安装配置使用
安装步骤 https://github.com/medcl/elasticsearch-analysis-ik 以插件形式安装: [elsearch@localhost elasticsearch- ...
- 从零搭建SSM框架(四)手动实现Tomcat部署
发布War包 Windows环境部署 增加如下配置 <Context path="/" docBase="cnki" debug="0" ...
- C# 遍历枚举
C#中,如何获取(遍历)枚举中所有的值: public enum Suits { Spades, Hearts, Clubs, Diamonds, NumSuits } private static ...