1. 程式人生 > >C 之 讀取和複製檔案

C 之 讀取和複製檔案

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void main(){
	//計算機的檔案儲存在物理上都是二進位制
	//文字檔案和二進位制之分,其實是一個邏輯之分
	//C讀寫文字檔案與二進位制檔案的差別僅僅體現在回車換行符
	//寫文字時,每遇到一個'\n',會將其轉換成'\r\n'(回車換行)
	//讀文字時,每遇到一個'\r\n',會將其轉換成'\n'
	char* read_path = "D:\\qq.png";
	char* write_path = "D:\\new_qq.png";

	//讀的檔案 b字元表示操作二進位制檔案binary
	//fopen 後邊的具體引數請看參考文件
	FILE *read_fp = fopen(read_path, "rb");
	//寫的檔案
	FILE *write_fp = fopen(write_path, "wb");

	int buff[50];//緩衝區
	int len = 0;//每次讀到的資料長度
	while (((len=fread(buff,sizeof(int),50,read_fp))!=0))
	{
		//將讀取到的內容寫入新的檔案
		fwrite(buff, sizeof(int), len, write_fp);
	};
	//關閉流
	fclose(read_fp);
	fclose(write_fp);
	getchar();
}