C语言--文件
来源:互联网 发布:血源诅咒捏脸美女数据 编辑:程序博客网 时间:2024/06/03 07:44
#include
#include
********************************文件***********************************8
1,fread,fwrite-块操作
fwrite(unsigned char*pubff,int size,int count,FILE *fp)
pubff是一个指向需要写入数据的存放地址,size是指定写的单个数据大小,count是指一共需要写多少个size字节的数据。
fread(unsigned char*pubff,int size,int count,FILE *fp)
2,fgetc,fputc -单个字符操作
3,fgets,fputs -字符串操作
char*fgets(char*str,into size,FILE *fp)
从指定文本文件中读入一个字符串
char fputs(char*str,FILE*fp)
向指定的文件中写入一个字符串
4,fscanf,fprintf-格式化操作
fprintf(FILE *fp,格式字符串,输出参数列表)
fscanf(FILE *fp,格式化字符串,输入参数列表)
5,fseek(FILE *fp,offset,seek_ ())
offset是指以seek- ()为基于当前位置向前或向后移动的字节数
0是指向首位置,1是指向当前位置,2是指向末尾位置
origin:seek_set(0),seek_cur(1),seek_end(2)
fseek(fp,0,2);移动到文件末尾
fseek(fp,0,0)移动到文件开头
6,ftell(FILE *fp)返回当前文件中位置指针相对头文件的位移量。
7,rewind//指针指向首地址,
8,_stat
9,以写的方式打开一个文件,该文件可以不存在。
#if 0
void sort(char *a,int n);
void main()
{
FILE *fp = NULL,*fp2=NULL;
char a[20]="";
int n,size = 0;
fp = fopen("C:\\Documents and Settings\\Administrator\\桌面\\1.txt","rb");
fp2 = fopen("C:\\Documents and Settings\\Administrator\\桌面\\2.txt","wb");
if(NULL == fp)
printf("error\n");
// fseek(fp,2,0);
fseek(fp,0,2); //移动到文件末尾
size = ftell(fp);
fseek(fp,0,0);//rewind(fp);
n = fread(a,size,1,fp);
puts(a);
printf("%d\n",n);
sort(a,size);
fwrite(a,size,1,fp2);
fclose(fp);
}
void sort(char *a,int n)
{
int i,j;
char t;
for(i = 0;i
{
for(j = 0;j
{
if(a[j] < a[j+1])
{
t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
}
}
}
#endif
EOF--文件结束标志(-1)
feof(fp);
#if 0
void main()
{
FILE *fp = NULL,*fp2=NULL;
char a;
int n,size = 0;
fp = fopen("C:\\Documents and Settings\\Administrator\\桌面\\1.txt","rb");
fp2 = fopen("C:\\Documents and Settings\\Administrator\\桌面\\2.txt","wb");
while((a = fgetc(fp)) != EOF)
{
putchar(a);
fputc(a,fp2);
}
fclose(fp);
fclose(fp2);
}
#endif
#if 0
void main()
{
FILE *fp = NULL,*fp2=NULL;
// char a[20];
struct _stat buf;
int n,size = 0;
int a,b;
fp = fopen("C:\\Documents and Settings\\Administrator\\桌面\\1.txt","rb");
fp2 = fopen("C:\\Documents and Settings\\Administrator\\桌面\\2.txt","wb");
_stat("C:\\Documents and Settings\\Administrator\\桌面\\1.txt",&buf);
size = buf.st_size;
// fgets(a,size+1,fp);
// fputs(a,fp2);
// puts(a);
fscanf(fp,"-=",&a,&b);
fprintf(fp2,"a=%d,b=%d",a,b);
fprintf(fp2,"asdfasdfad");
fclose(fp);
fclose(fp2);
}
#endif
typedef struct data
{
char a[3];
char num[7];
char b[72];
}Data;
#include
#include
void sort(Data *p,int n);
void main()
{
Data *p = NULL;
FILE *fp1 = fopen("C:\\Documents and Settings\\Administrator\\桌面\\3.txt","rb");
FILE *fp2 = fopen("C:\\Documents and Settings\\Administrator\\桌面\\4.txt","wb");
int size = 0,n = 0,i;
struct _stat buf;
_stat("C:\\Documents and Settings\\Administrator\\桌面\\3.txt",&buf);
size = buf.st_size;
n = size / sizeof(Data);
p = (Data *)malloc(n*sizeof(Data));
for(i = 0;i
{
fread(&p[i],sizeof(Data),1,fp1);
}
sort(p,n);
for(i = 0;i
{
fwrite(&p[i],sizeof(Data),1,fp2);
}
fclose(fp1);
fclose(fp2);
}
void sort(Data *p,int n)
{
int i,j;
Data t;
for(i = 0;i
{
for(j = 0;j
{
if(strncmp(p[j].num,p[j+1].num,7)> 0)
{
t = p[j];
p[j] = p[j+1];
p[j+1] = t;
}
}
}
}
- c语言读写文件
- c语言文件操作
- C语言的文件
- C语言文件操作
- C语言文件操作
- C语言文件操作
- C语言文件操作
- C语言文件拷贝
- C语言文件操作
- C语言文件操作
- c语言文件操作
- C语言文件操作
- C 语言文件教程
- C语言文件操作
- C语言写文件
- C语言读写文件
- C语言文件操作
- C语言文件读取
- bzoj 3195 奇怪的道路 状压dp
- Linux学习笔记:Linux基础命令之三
- 东北大学复名始末
- C++中虚函数工作原理和(虚)继承类的内存占用大小计算
- 留言板
- C语言--文件
- webservice_wsimport命令
- 新建Maven项目
- TensorFlow插曲--tf.argmax函数
- Unity Android Plugin 开发教程
- excel中VLOOKUP的使用
- SpringBoot之mybatis-generator自动生成
- spark在创建临时表时的异常
- sizeof与strlen的区别