| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 922 人关注过本帖
标题:文件复制程序,错在那
只看楼主 加入收藏
beyondabcd
Rank: 1
等 级:新手上路
帖 子:112
专家分:0
注 册:2007-5-19
收藏
 问题点数:0 回复次数:1 
文件复制程序,错在那

#include<stdio.h>
#include<math.h>
#include<dos.h>
#include <dir.h>
#include<graphics.h>
#include <string.h>
#include <stdio.h>
#include <fcntl.h>
#include <io.h>


void main()
{
char s[]="sub_1.bmp";
struct ffblk C_ffblk;
char C_path[30],D_path[20];
FILE *C_fp,*D_fp;

strcpy(C_path, "C:\\TURBOC2\\");
strcat(C_path,s); /*复制要拷贝的路径和文件名*/
strcpy(D_path, "h:\\" );
strcat(D_path,s); printf("C=%s,D=%s",C_path,D_path);
if((C_fp=fopen(C_path,"r"))==NULL) printf("can't open this source file"); /*源文件只读*/
if((D_fp=fopen(D_path,"w"))==NULL) printf("can't open this objective file"); /*目标文件可写*/
datacopy(C_fp,D_fp);
fclose(C_fp); fclose(D_fp);
}
/**************************** 文件拷贝****************************************/
datacopy(FILE *rbfp,FILE *wbfp) /**rbfp=read file wbfp=write file **/
{ int ch1;
ch1 = fgetc(rbfp);
while(ch1!=EOF)
{ fputc(ch1,wbfp); ch1 = fgetc(rbfp); fputc(ch1,wbfp); }

}
大家帮我看看,这个复制文件的程序为什么不行呀,和实际原来的文件大小不一样呀?如何动态的复制文件

搜索更多相关主题的帖子: 文件 
2007-09-01 09:50
ba_wang_mao
Rank: 2
来 自:成都理工大学
等 级:论坛游民
帖 子:297
专家分:27
注 册:2006-11-7
收藏
得分:0 

1.以读方式打开源文件,得到文件句柄
2.以读+写方式打开目标文件,得到文件句柄
3.while (1)
3.1 读源文件1024字节到缓冲区Buffer
3.2 如果实际读的字节数<1024,则表示已经读到文件尾
3.3 写缓冲区Buffer到目标文件
3.4 IF 已经读到文件尾,THEN
break;
ENDIF
4.关闭源文件
5.关闭目标文件


多年以来还在MSDOS、单片机下搞嵌入式编程,对WINDOWS编程一窍不通,很想了解WINDOWS下病毒编程技术。
2007-09-03 16:43
快速回复:文件复制程序,错在那
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032426 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved