使用C++實現對單張圖片的讀取和保存,C語言可以參考,比較簡單。
#include<iostream> using namespace std; void main(void) { //保存輸入圖像文件名和輸出圖像文件名 char InImgName[10]; char OutImgName[10]; //圖像數據長度 int length; //文件指針 FILE* fp; //輸入要讀取的圖像名 cout<<"Enter Image name:"; cin>>InImgName; //以二進制方式打開圖像 if ( (fp=fopen(InImgName, "rb" ))==NULL ) { cout<<"Open image failed!"<<endl; exit(0); } //獲取圖像數據總長度 fseek(fp, 0, SEEK_END); length=ftell(fp); rewind(fp); //根據圖像數據長度分配內存buffer char* ImgBuffer=(char*)malloc( length* sizeof(char) ); //將圖像數據讀入buffer fread(ImgBuffer, length, 1, fp); fclose(fp); //輸入要保存的文件名 cout<<"Enter the name you wanna to save:"; cin>>OutImgName; //以二進制寫入方式 if ( (fp=fopen(OutImgName, "wb"))==NULL) { cout<<"Open File failed!"<<endl; exit(0); } //從buffer中寫數據到fp指向的文件中 fwrite(ImgBuffer, length, 1, fp); cout<<"Done!"<<endl; //關閉文件指針,釋放buffer內存 fclose(fp); free(ImgBuffer); }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答