c语言怎样实现文件复制
在C语言中,可使用标准库函数来实现文件的复制。下面是一个基本的示例代码:
```c
#include
#define BUFFER_SIZE 4096
int main() {
FILE *sourceFile, *targetFile;
char buffer[BUFFER_SIZE];
sourceFile = fopen("source.txt", "rb"); // 打开源文件(以二进制模式读取)
if (sourceFile == NULL) {
printf("没法打开源文件。 ");
return 1;
}
targetFile = fopen("target.txt", "wb"); // 打开目标文件(以二进制模式写入)
if (targetFile == NULL) {
printf("没法创建目标文件。 ");
fclose(sourceFile);
return 1;
}
while (fread(buffer, sizeof(char), BUFFER_SIZE, sourceFile) > 0) { // 从源文件读取数据
fwrite(buffer, sizeof(char), BUFFER_SIZE, targetFile); // 将数据写入目标文件
}
printf("文件复制成功。 ");
fclose(sourceFile);
fclose(targetFile);
return 0;
}
```
以上示例中,我们使用了`fopen()`函数来打开源文件和目标文件,并指定了相应的文件名和访问模式("rb"表示以二进制
模式读取文件,"wb"表示以二进制模式写入文件)。
然后,我们使用一个循环来不断从源文件中读取数据,并将读取到的数据写入目标文件中。这里使用了`fread()`函数从源
文件中读取数据,并使用`fwrite()`函数将数据写入目标文件。
最后,通过`fclose()`函数关闭源文件和目标文件,释放资源。
请确保在运行代码之前,已创建了一个名为"source.txt"的源文件。履行该代码后,将会生成一个名为"target.txt"的目
标文件,内容与源文件相同。
TOP