向文件写入一个整型数
实现代码(参考):
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int main()
{
int fd;
int data=100;
int data2=0;
fd=open("./file",O_RDWR);
int n_write=write(fd,&data,sizeof(int));
lseek(fd,0,SEEK_SET);
int n_read=read(fd,&data2,sizeof(int));
printf("%d\n",data2);
close(fd);
return 0;
}
运行效果:
CLC@Embed_Learn:~/lianxi3$ vi file
CLC@Embed_Learn:~/lianxi3$ ./a.out
100
写结构体数组到文件:
实现代码:
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
struct Test
{
int a;
char c;
};
int main()
{
int fd;
struct Test data[2]={{100,'b'},{101,'a'}};
struct Test data2[2];
fd=open("./file",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("%d, %c\n",data2[0].a,data2[0].c);
printf("%d, %c\n",data2[1].a,data2[1].c);
close(fd);
return 0;
}
运行结果:
CLC@Embed_Learn:~/lianxi3$ ./a.out
100, b
101, a