C语⾔读取⽂件函数⽤法,C语⾔读取⽂件流的相关函数⽤法简
介
C语⾔读取⽂件流的相关函数⽤法简介
C语⾔fread()函数:读⽂件函数(从⽂件流读取数据)
头⽂件:
#include
定义函数:
size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
函数说明:fread()⽤来从⽂件流中读取数据.
参数stream 为已打开的⽂件指针, 参数ptr 指向欲存放读取进来的数据空间, 读取的字符数以参数size*nmemb 来决定. Fread()会返回实际读取到的nmemb 数⽬, 如果此值⽐参数nmemb 来得⼩, 则代表可能读到了⽂件的尾或有错误发⽣, 这时必须⽤feof()或ferror()来决定发⽣什么情况.
返回值:返回实际读取到的nmemb 数⽬。
范例
#include
c语言struct头文件#define nmemb 3
struct test
{
char name[20];
int size;
} s[nmemb];
main()
{
FILE * stream;
int i;
stream = fopen("/tmp/fwrite", "r");
fread(s, sizeof(struct test), nmemb, stream);
fclose(stream);
for(i = 0; i < nmemb; i++)
printf("name[%d]=%-20s:size[%d]=%d\n", i, s[i].name, i, s[i].size);
}
执⾏
name[0]=Linux! size[0]=6
name[1]=FreeBSD! size[1]=8
name[2]=Windows2000 size[2]=11
C语⾔feof()函数:检查⽂件流是否读到了⽂件尾头⽂件:
#include
定义函数:
int feof(FILE * stream);
函数说明:feof()⽤来侦测是否读取到了⽂件尾, 尾数stream 为fopen()所返回之⽂件指针. 如果已到⽂件尾则返回⾮零值, 其他情况返回0.
返回值:返回⾮零值代表已到达⽂件尾.
时间: 2015-08-29
1.建⽂件夹 int _mkdir(const char *path,mode_t mode); 函数名: _mkdir 功 能: 建⽴⼀个⽬录 ⽤ 法: int _mkdir( const char *dirname ); 头⽂件库:direct.h 返回值:创建⼀个⽬录,若成功则返回0,否则返回-1
===================================================== 2.打开⽂件fopen() 函数功能: 打开⼀个⽂件 函数原型:FILE * fope
C语⾔creat()函数:创建⽂件函数 头⽂件: #include #include #include 定义函数: int creat(const char * pathname, mode_tmode); 函数说明: 1.参数 pathname 指向欲建⽴的⽂件路径字符串. 2.Creat()相当于使⽤下列的调⽤⽅式调⽤open() open(const char * pathname,
C语⾔read()函数:读⽂件函数(由已打开的⽂件读取数据) 头⽂件: #include 定义函数: ssize_t read(int fd, void * buf, size_t count); 函数说明:read()会把参数fd 所指的⽂件传送count 个字节到buf 指针所指的内存中. 若参数count 为0, 则read()不会有作⽤并返回0. 返回值为实际读取到的字节数, 如果返回0, 表⽰已到达⽂件尾或是⽆可读取的数据,此外⽂件读写位置会随读取到的字节移动.
C语⾔getgrent()函数:从组⽂件中取得账号的数据 头⽂件: #include #include 定义函数: struct group * getgrent(void); 函数说
明:getgrent()⽤来从组⽂件(/etc/group)中读取⼀项组数据, 该数据以group 结构返回. 第⼀次调⽤时会取得第⼀项组数据, 之后每调⽤⼀次就会返回下⼀项数据, 直到已⽆任何数据时返回NULL. struct group { char *
fgets() 有局限性,每次最多只能从⽂件中读取⼀⾏内容,因为 fgets 遇到换⾏符就结束读取.如果希望读取多⾏内容,需要使⽤ fread 函数:相应地写⼊函数为 fwrite. fread() 函数⽤来从指定⽂件中读取块数据.所谓块数据,也就是若⼲个字节的数据,可以是⼀个字符,可以是⼀个字符串,可以是多⾏数据,并没有什么限制.fread() 的原型为: size_t fread ( void *ptr, size_t size, size_t count, FILE *fp ); fwri
C语⾔link()函数:建⽴⽂件连接 头⽂件: #include 定义函数: int link (const char * oldpath, const char * newpath); 函数说明:link()以参数newpath 指定的名称来建⽴⼀个新的连接(硬连接)到参数oldpath 所指定的已存在⽂件. 如果参数newpath 指定的名称为⼀已存在的⽂件则不会建⽴连接. 返回值:成功则返回0, 失败返回-1, 错误原因存于errno. 附加说明:link()所建⽴
C语⾔stat()函数:获取⽂件状态 头⽂件: #include #include 定义函数: int stat(const char * file_name, struct stat *buf); 函数说
明:stat()⽤来将参数file_name 所指的⽂件状态, 复制到参数buf 所指的结构中. 下⾯是struct stat 内各参数的说明: struct stat { dev_t
st_dev; //device ⽂件的设备编
C语⾔getpid()函数:获取进程识别码 头⽂件: #include 定义函数: pid_t getpid(void); 函数说明:getpid ()⽤来取得⽬前进程的进程识别码,许多程序利⽤取到的此值来建⽴临时⽂件, 以避免临时⽂件相同带来的问题. 返回值:⽬前进程的进程识别码 范例 #include main() {
printf("pid=%d\n", getpid()); } 执⾏: pid=1494 /*每
C语⾔getcwd()函数:取得当前的⼯作⽬录 头⽂件: #include 定义函数: char * getcwd(char * buf, size_t size); 函数说明:getcwd()会将当前的⼯作⽬录绝对路径复制到参数buf 所指的内存空间,参数size 为buf 的空间⼤⼩. 注: 1.在调⽤此函数时,buf 所指的内存空间要⾜够⼤.若⼯作⽬录绝对路径的字符串长度超过参数size ⼤⼩,则返回NULL,errno 的值则为ERANGE. 2.倘若参数buf
⽅法1: import sys print(sys.argv) 得到⽂件当前绝对路径字符串的⼀个列表
['D:/pycharm/PracticeProject/ClientServerNetworking.py'] ⽅法2: import os wd()) print(os.listdir())
print(os.path.wd(),os.listdir()[1])) D:\pycharm\PracticeProject ['.idea', 'C
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论