利用feof()函数复制文件的C代码(解决复制后文件多一字符的问题)
2009-01-05 19:46
405 查看
/*函数名: fprintf
功 能: 传送格式化输出到一个流中
用 法: int fprintf(FILE *stream, char *format[, argument,...]);
程序例:
*/
/* Program to create backup of the
AUTOEXEC.BAT file */
#include <stdio.h>
int main(void)
{
FILE *in, *out;
int x,y,z;
char a;
x=y=z=100;
if ((in = fopen("//AUTOEXEC.BAT", "rt"))== NULL)
{
fprintf(stderr, "Cannot open input file./n");
return 1;
}
if ((out = fopen("//AUTOEXEC.BAK", "wt"))== NULL)
{
fprintf(stderr, "Cannot open output file./n");
return 1;
}
while (1)
{
x=feof(in);
a=fgetc(in); /*假设检测到文件尾部,但是feof(in)=0,in所指字符指针加1,
再去调用feof(in)返回即为非0值了*/
y=(int)a;
if(feof(in)!=0) /*解决复制文件时多一个0xFF字符的问题,即Y上加2点*/
break;
fputc(a, out);
}
fclose(in);
fclose(out);
return 0;
}
功 能: 传送格式化输出到一个流中
用 法: int fprintf(FILE *stream, char *format[, argument,...]);
程序例:
*/
/* Program to create backup of the
AUTOEXEC.BAT file */
#include <stdio.h>
int main(void)
{
FILE *in, *out;
int x,y,z;
char a;
x=y=z=100;
if ((in = fopen("//AUTOEXEC.BAT", "rt"))== NULL)
{
fprintf(stderr, "Cannot open input file./n");
return 1;
}
if ((out = fopen("//AUTOEXEC.BAK", "wt"))== NULL)
{
fprintf(stderr, "Cannot open output file./n");
return 1;
}
while (1)
{
x=feof(in);
a=fgetc(in); /*假设检测到文件尾部,但是feof(in)=0,in所指字符指针加1,
再去调用feof(in)返回即为非0值了*/
y=(int)a;
if(feof(in)!=0) /*解决复制文件时多一个0xFF字符的问题,即Y上加2点*/
break;
fputc(a, out);
}
fclose(in);
fclose(out);
return 0;
}
相关文章推荐
- SVN利用post-commit hooks自动同步代码到生产环境,解决大数量文件更新同步问题
- SVN利用post-commit hooks自动同步代码到生产环境,解决大数量文件更新同步问题
- JS代码获取当前日期时支持IE,不兼容FF和chrome,解决这个问题,我们需要把获取时间的getYear()函数换成getFullYear()
- asp.net实现ftp上传代码(解决大文件上传问题)
- lamp使用php处理上传文件,调用move_uploaded_file函数遇到目录写权限问题及解决过程
- php中隐形字符65279(utf-8的BOM头)问题和fwrite写入文件bom头导致的乱码问题解决
- eclipse无法对某些函数进行代码提示的问题的解决
- c++沉思录笔记(21章代码)通过函数对象解决c++的函数嵌套问题
- java代码实现文件上传到linux服务器及问题汇总及解决
- 复制粘贴代码时要注意空白字符的问题
- ant编译java文件时报非法字符问题的解决方法
- php的ord函数——解决中文字符截断问题
- VS2010发布web应用程序详解(解决发布丢失非代码文件的问题)
- CFile 读写文件 (解决汉字,换行,空字符问题) .
- 利用JS和CSS的覆盖特性来解决文件冲突问题
- ASP FSO文件操作函数代码(复制文件、重命名文件、删除文件、替换字符串)
- 解决:因为复制包含SVN文件造成的版本冲突问题
- java代码实现文件上传到linux服务器及问题汇总及解决(亲测可行)
- Java代码解决下载文件乱码问题
- linux 中的进程wait()和waitpid函数,僵尸进程详解,以及利用这两个函数解决进程同步问题