日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言打开文件保存文件格式,文件的打开与保存(C语言)

發布時間:2024/1/1 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言打开文件保存文件格式,文件的打开与保存(C语言) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近在弄文件的傳輸,基本流程就是:

打開文件->讀取文件->傳輸(scoket模塊)

->寫入文件->保存.

現在單單看文件操作的部分,弄了我3天時間沒想明白,看下面的代碼。

為什么打開保存txt就可以,但是其他的文件就不行呢?

FILE *pFile=fopen("D:\\111.doc","r");//之前的亂碼系因為當j=lenFile的時候,*sendbuf='0',這樣是把sendbuf的第一個字符變0,當然亂碼啦.

char *buffer;

fseek(pFile,0,SEEK_END);

int lenFile=ftell(pFile);

buffer=new char[lenFile+1];

int i=0;

for (i=0;i

保存的代碼///

FILE *pFile2=fopen("D:\\133.doc","w");

fwrite(buffer,1,lenFile,pFile2);

fclose(pFile2);

繼續看孫鑫的《VC++深入詳解》,果然看書不要看一半啊,一知半解害死自己。還是不夠踏實,太浮躁了!

里面有說文本方式和二進制方式讀取文件的區別,系統默認的不是二進制方式讀取文件,而是以文本方式打開。所以這就是為什么txt能打開而其他是亂碼的原因了。

文件一般分為:二進制文件和文本文件。

文本文件:也被稱為ASCII文件,它的每一個字節存放的都是可表示為一個字符的ASCII代碼的文件,它是以“行”為基本結構的一種信息組織和儲存方式的文件,可用任何文字處理程序閱讀的簡單文件。

二進制文件:是包含在ASCII及擴展ASCII字符中編寫的數據和程序。一般是可執行程序,圖像,聲音等文件。

這里要強調的是:雖然這里將文件分類了,但實際上,他們的本質都是:文件只是在計算機內存中以二進制表示的數據再外部存儲介質的另一種存放形式。對于文本文件來說,它只是一種特殊形式的文件,它所存放的每一個字節都可以轉換成一個可讀的字符。

所以,上面就很簡單啦。

這里: ? ? ? ?FILE *pFile=fopen("D:\\111.jpg","r");

應該改成:FILE *pFile=fopen("D:\\111.jpg","rb");

其他類似的時候的代碼也作相應改動就可以了。。。

呼,困擾了2天的問題搞掂了,好開心。

總結

以上是生活随笔為你收集整理的c语言打开文件保存文件格式,文件的打开与保存(C语言)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。