黑马程序员技术交流社区
标题:
文件读取(fread)写入(fwrite)
[打印本页]
作者:
一步步往上爬
时间:
2016-1-13 13:20
标题:
文件读取(fread)写入(fwrite)
fwrite:
写一段数据到文件
语法:fwrite(数据的首地址,每块的字节数,一共多少块,文件指针);
语义:要写入的内容的首地址,分成多少块,每块多少字节,然后写入到哪个文件去
fwrite只能写:字符
fread:
读取文件内容
fread(变量的地址,每块的字节大小,多少块,文件指针);
语义:去文件指针所指向的文件处读取内容,保存到这个变量里,按多少块来读,以及每块读取多大的字节,每块读取多少字节,最好根据类型来,写1个字节也可以的
如果文件的实际长度小于你要读取的字节总大小,也只是读取实际长度个
练习:先写一段数据“我爱北京天安门”,写入到桌面1.txt,写完以后再读取出来,并且打印
文件路径:
1.就是文件在电脑上的地址/Users/apple/Desktop/3.txt
用fwrite写入的时候,必须保证fwrite设置的字节数要小于或者等于你的真实数据最大字节
读取的时候无所谓,你可以把fread设置的字节数大于文件实际保存的字节数,没有影响!读取时读到末尾也会自动停止读取
例子:
#include <stdio.h>
int main(int argc, const char * argv[]) {
//fwrite:写一段数据到文件
// FILE *fp = fopen("/Users/mac/Desktop/11.txt", "w");//创建文件或者打开文件
// if (fp) {
// char str[]="好好学习天天向上";
// fwrite(str, 3, 8, fp);//文件操作 写入东西到里面
//
// fclose(fp);//关闭文件
// printf("%s\n",str); //打印文件里面的东西
// }
//
//fread:读取文件内容
FILE *fp1 = fopen("/Users/mac/Desktop/11.txt", "r");
if (fp1) {
char str1[1000];
fread(str1, 3, 8, fp1);
puts(str1);
fclose(fp1);
}
return 0;
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2