1 实验5Linux 文件操作之带缓存和非缓冲文件的读写 学生姓名:王祥真学号:6103114095专业班级:计科143
实验类型:□ 验证▥综合 □ 设计 □ 创新实验日期:2017.4.20实验成绩:
一.实验目的
通过编写文件读写及上锁的程序,进一步熟悉 Linux 中文件 I/O 相关的应用开发, 并且熟练掌握 open()、read()、write()、fcntl()等函数的使用。
二.实验内容
1.用write, read, open 等系统调用编写分别实现如下功能的程序(要求进行必要的出错检查):
(1)创建一个文件testfile.txt ,文件内容从键盘输入;
(2)将testfile.txt 的内容显示在屏幕上,并将testfile.txt 的内容复制到一个新的文件file2.txt 中。
实验代码:
#include
#include
#include
#include
#include
#include
#include
#include
int main()
{
int fd, fdsrc,fddes,nbytes;
int newret ,n1,n2;
int flags=O_CREAT | O_TRUNC | O_WRONLY;
char src[50],des[30],buf[30];
char str1[60];
char str2[60];
strcat(str1,"cat ");
printf("请输入要创建的源文件名字");
scanf("%s",src);
fd=creat(src,S_IRUSR|S_IWUSR); //创建源文件
n1=read(STDIN_FILENO,buf,80);
if(n1<0){
perror("read STDIN_FILENO");
exit(1);
}
fdsrc=open(src,flags,0644); //以读写方式打开
if(fdsrc<0){
exit(1);
}