加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

Linux 库函数达成文件操作

发布时间:2021-11-22 09:34:42 所属栏目:PHP教程 来源:互联网
导读:1. Linux系统调用,文件的描述符使用的是一个整数,库函数访问文件使用FILE类型的指针去指向描述文件; 2. 库函数不随系统平台而变,即不管win还是Linux都适用; 库函数 - 读文件 size_t fread(void *ptr, size_t size, size_t n, FILE *stream) 功能:从str

1. Linux系统调用,文件的描述符使用的是一个整数,库函数访问文件使用FILE类型的指针去指向描述文件;
 
2. 库函数不随系统平台而变,即不管win还是Linux都适用;
 
 
 
库函数 - 读文件
 
size_t fread(void *ptr, size_t size, size_t n, FILE *stream)
 
功能:从stream指向的文件中读取n个字段,每个字段为size字节,并将读取的数据放入ptr所指向的字符数组中,返回实际已读取的字节数。(读出来的数据量为size*n)
 
 
 
库函数 - 写文件
 
size_t fwrite(const void *ptr, size_t size, size_t n, FILE *stream)
 
功能:从缓冲区ptr所指向的数组中把n个字段写到stream指向的文件中,每个字段长为size个字节,返回实际写入的字段数。
 
 
 
库函数 - 创建和打开
 
FILE *fopen(const char *filename, const char *mode)
 
filename:打开的文件名(包含路径,缺省为当前路径)
 
mode:打开模式
 
#include <stdio.h>
 
#include <stdlib.h>
 
 
 
int main()
 
{
 
FILE *fp;
 
char ch;
 
char fname[30];
 
 
 
printf("Please input the file name:");
 
scanf("%s", &fname);
 
fp=fopen(fname, "r"); //以只读方式打开
 
if(fp==NULL){ //打开失败
 
printf("Open failed.n");
 
exit(1);
 
}
 
while((ch=getc(fp))!=EOF) //一个字符一个字符遍历
 
{
 
putchar(ch); //输出ch传入的字符
 
}
 
fclose(fp); //关闭文件
 
return 0;
 
}
 
 
 
读字符:
 
fgetc 获取字符:
 
fputc 输出字符:
 
#include <stdio.h>
 
#include <string.h>
 
 
 
int main()
 
{
 
char msg[] = "Hello, linuxdba";
 
// int i;
 
FILE *fp;
 
char ch;
 
fp = fopen("/etc/passwd", "r");
 
while ((ch = fgetc(fp)) != EOF)
 
//while (msg[i]&&(i < strlen(msg))) // ok,pass!
 
{
 
fputc(ch, stdout); //什么意思?
 
// i ++;
 
}
 
fclose(fp);
 
return 0;
 
}
 
路径获取
 
char *getcwd(char *buffer, size_t size)
 
功能:提供一个size大小的buffer,getcwd会把当前的路径名拷贝到buffer中。如果buffer太小,函数会返回-1.

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读