今天系统级程序设计课程开课了,和我想的并不一样,这门课听老师说偏底层一点。
今天主要是用C语言为工具讲解了在Linux系统下文件的操作。
所用函数:
1.open()
int open(const char *pathname, int flags[,mode_t mode])
2.read()
ssize_t read(int fd, viod *buf, size_t count)
3.write()
ssize_t write(int fd, const void *buf, size_t count); //count:最大输出字节数
4.lseek()
offf_t lseek(int fd, off_t offest, int whence)
5.close()
int close(int fd) //功能描述:关闭文件
案例实现:
#include#include #include #include #include int main(){ int fd = 0; char filename[20] = "aaa.txt"; fd = open(filename, O_RDWR|O_EXCL|O_TRUNC, S_IRWXG); if (fd == -1){ perror("file open error.n"); exit(-1); } int len = 0; char buf[100] = {0}; scanf("%s", buf); len = strlen(buf); write(fd, buf, len); close(fd); printf("-----------------------n"); fd = open(filename, O_RDONLY); if(fd == -1){ perror("file open error.n"); exit(-1); } off_t f_size = 0; f_size = lseek(fd, 0, SEEK_END); lseek(fd, 0, SEEK_SET); while(lseek(fd, 0, SEEK_CUR) != f_size){ read(fd, buf, 1024); printf("%sn", buf); } close(fd); return 0; }
通过这个实例学习,我更加熟练的掌握的文件操作的五个函数,收益匪浅。
OK。



