java 读文件比c,C语言 File文件处理 读文件

1、读文件

要使用C语言读取文件,可以使用size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream),此方法返回成功读取的元素总数会以 size_t 对象返回,size_t 对象是一个整型数据类型。如果总数与 nmemb 参数不同,则可能发生了一个错误或者到达了文件末尾。

例如,#include

#define nmemb 3

struct test

{

char name[20];

int size;

} s[nmemb];

int main(){

FILE * stream;

int i;

stream = fopen("/tmp/fwrite","r");

fread(s,sizeof(struct test),nmemb,stream);

fclose(stream);

for(i=0;i

printf("name[%d]=%-20s:size[%d]=%d\n",i,s[i].name,i,s[i].size);

}

文件读取还有其它函数,可以参考下面的文档,

相关函数:

2、获取文件信息

要获取有关文件的更多信息,可以使用int fstat(int fildes, struct stat *buf);函数。

stat文件信息结构体:struct stat {

dev_t st_dev; /* device */

ino_t st_ino; /* inode */

mode_t st_mode; /* protection */

nlink_t st_nlink; /* number of hard links */

uid_t st_uid; /* user ID of owner */

gid_t st_gid; /* group ID of owner */

dev_t st_rdev; /* device type (if inode device) */

off_t st_size; /* total size, in bytes */

blksize_t st_blksize; /* blocksize for filesystem I/O */

blkcnt_t st_blocks; /* number of blocks allocated */

time_t st_atime; /* time of last access */

time_t st_mtime; /* time of last modification */

time_t st_ctime; /* time of last change */

};

例如,#include

#include

#include

#include

#include

#include

int main ( int argc, char *argv[])

{

struct stat FileAttrib;

if (stat("/etc/passwd", &FileAttrib) < 0)

printf("File Error Message = %s\n", strerror(errno));

else

printf( "Permissions: %d\n", FileAttrib.st_mode );

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值