Linux学习之c函数库的文件操作

在这里插入图片描述

#include<stdio.h>  
1. #include<stdlib.h>  
2. #include<unistd.h>//write函数  
3. #include<fcntl.h>//open函数  
4. #include<string.h>  
5. int main(){  
6.     int fd=0;  
7.     char fileName[50]="/home/directory/linux_test_directory/a.txt";  
8.     fd=open(fileName,O_RDWR|O_EXCL|O_TRUNC,S_IRWXG);  
9.     //判断打开状态  
10.     if(fd==-1){  
11.             perror("文件打开失败.\n");  
12.             exit(-1);  
13.         }  
14.         //写数据  
15.         int len=0;  
16.         char buf[100] = {0};  
17.         for(int i=0;i<3;i++){  
18.         scanf("%s",buf);  
19.         len=strlen(buf);  
20.         //写  
21.         write(fd,buf,len);  
22.         write(fd,"\n",1);  
23.         }  
24.         //关闭文件  
25.         close(fd);  
26.           
27.           
28.         //读文件  
29.         fd=open(fileName,O_RDONLY);  
30.         if(fd==-1){  
31.             perror("文件打开失败.\n");  
32.             exit(-1);  
33.         }  
34.         off_t f_size=0;  
35.         f_size=lseek(fd,0,SEEK_END);//获取文件长度  
36.         lseek(fd,0,SEEK_SET);//设置文件读取位置  
37.         while (lseek(fd,0,SEEK_CUR)!=f_size) {  
38.              read(fd,buf,1024);  
39.              printf("%s\n",buf);  
40.         }  
41.         close(fd);  
42.         return 0;  
43. }  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值