调用read函数从打开文件中读数据。
#include<unistd.h>
ssize_t read(int fd, void *buf, size_t nbytes);
参数:
fd:文件描述符
buf:读取的数据缓存区
nbytes:要写入的字节数
返回值:
读到的字节数,若已到文件尾,返回0;若出错,返回-1.
#include<fcntl.h>
int main()
{
int f = open("test.txt",O_RDONLY);
char buf[20]="\0";
read(f,buf,10);
printf(buf);
printf("\n");
return 0;
}
调用write函数向打开文件写数据
#include<unistd.h>
ssize_t write(int fd, const void *buf, size_t bytes);
参数:
fd:文件描述符
buf:待写入数据缓存区
nbytes:要写入的字节数
返回值:
成功,返回已写的字节数。
出错,返回-1。
#include<fcntl.h>
#include<unistd.h>
#include<stdio.h>
int main()
{
int f = open("test.txt",O_RDWR);
char buf1[20]="\0";
read(f,buf1,12);
printf(buf1);
printf("\n");
char buf2[2] = {'v'};
write(f,buf2,1);
return 0;
}
如果在open函数中,加入O_APPEND常量,就会在txt中换行,否则是在同一行接着写入