实验4:文件系统实验指导
三 编译运行
• 1 编译 编译file.c客户端程序 客户端程序
– #gcc –o file.out file.c
• 2 将实验三中的 将实验三中的server.c拷贝到 下为 拷贝到/下为 拷贝到 example.txt
– #cp server.c /example.txt
• 3 查看原文件 查看原文件/example.txt
实验四 文件系统
• 一 实验目的 • 二 实验内容 • 三 编译运行
一 实验目的
• 1. 掌握文件系统的使用 • 2. 实现一个文本文件的某信息的插入和 删除 • 3. 实现一个记录文件的某记录的插入和 删除
二 实验内容
参考程序 /* 实验4 实验 文件系统 file.c */ #include <stdio.h> #include <string.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> main() { int fd0, record_len, buff_len, cnt; char filename[50], f_buff[2000]; strcpy(filename, "/example.txt");
5 观察运行结果 more /example.txt
此处是写文件 的结果
…续上 续上 fd0 = open(filename, O_RDWR|O_CREAT, 0644); /*打开文件 打开文件*/ 打开文件 if (fd0 < 0) { printf("Can't create example.txt file!\n"); exit(0); } buff_len = 20; record_len = 10; lseek(fd0, 0, SEEK_SET); */ /*读文件 大小为 读文件,大小为 的内容到f_buff中*/ 读文件 大小为record_len*buff_len的内容到 的内容到 中 cnt = read(fd0, f_buff, record_len * buff_len); cnt = cnt /record_len; printf("%s\n", f_buff); /*定位到文件开始位置 定位到文件开始位置
– #more /example源自txt• 4 运行 运行file.out程序 程序
– #./file.out
• 5 观察运行结果
2 拷贝/example.txt 文件
3 查看原 /example.txt文件
4 运行file.out 5 观察运行结果, 读/example.txt文 件,并显示。
…续上 续上 strcpy(f_buff, "1234567890"); /*设置要写入文件的信息 设置要写入文件的信息*/ 设置要写入文件的信息 write(fd0, f_buff, strlen(f_buff)); /*写文件 写文件*/ 写文件 write(fd0, "\n\r", 2); close(fd0); /*关闭文件 关闭文件*/ 关闭文件 }