1.写一个整数到文件
我们要使用3个函数,open去打开文件,使用write函数将数据写入到我们打开的文件。
代码:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int fd;
int data=100;
int data2=0;
fd=open("./file1",O_RDWR); //以可读可写方式打开文件
int n_write= write(fd,&data,sizeof(int)); //用指针把data里面的值取出来,并写入我们打开的
文件
lseek(fd,0,SEEK_SET); //光标移到开头
int n_read=read(fd,&data2,sizeof(int)); //从文件里面读到data2指向的地址。
printf("read %d \n",data2);
close(fd); //关闭文件
return 0;
}
2.写结构体数组到文件
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
struct test
{
int a;
char b;
};
int main()
{
int fd;
struct test data[2]={{100,'a'},{101,'c'}};
struct test data2[2];
fd=open("./file1",O_RDWR);
int n_write= write(fd,&data,sizeof(struct test)*2);
lseek(fd,0,SEEK_SET);
int n_read=read(fd,&data2,sizeof(struct test )*2);
printf("read %d %c\n",data2[0].a,data2[0].b);
printf("read %d %c\n",data2[1].a,data2[1].b);
close(fd);
return 0;
}