#include <stdlib.h>
#include <fcntl.h>
#include <string.h>
#define BUF_SIZE 128
void my_read(int fd)
{
int size;
char buffer[BUF_SIZE];
memset(buffer,'\0',BUF_SIZE);
//printf("文件中的数据是\t");
size=read(fd,buffer,BUF_SIZE);
printf("size=%d",size);
if(size==0)
printf("到达文件末尾\n");
else if(size<0)
printf("读取文件出现错误\n");
else
printf("文件中的数据是%s\n",buffer);
}
void my_write(int fd)
{
int size;
char buffer[BUF_SIZE];
memset(buffer,'\0',BUF_SIZE);
printf("要写入的数据是\t");
scanf("%s",buffer);
size=write(fd,buffer,strlen(buffer));
printf("size=%d",size);
if(size<0)
printf("写入失败\n");
else if(size==0)
printf("没有写入\n");
else
printf("写入成功\n");
}
int main(int argc ,char **argv)
{
int fd=-1;
if(argc<=1)
{
printf("enter right filename:\t");
return -1;
}
fd=open(argv[1],O_CREAT|O_WRONLY|O_TRUNC,0644);
if(fd==-1)
{
perror("create error");
return -2;
}
my_write(fd);
my_read(fd);
}