青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

我住包子山

this->blog.MoveTo("blog.baozishan.in")

用fstream對二進制文件的讀寫

這里介紹使用fstream這個類完成這個任務,fstream在輸入輸出方面比較全能。

操作系統通過二進制文件格式存儲大量文件。一般不指定二進制文件操作的I/O操作是面向文本的,用來讀寫特定編碼的文本。本文介紹用C++的fstream類讀寫二進制文件。

讀寫數據以這個WebSite結構體為例

        // Struct for C++ File I/O binary file sample

   1: struct WebSites
   2: {
   3:      char SiteName[100];
   4:      int Rank;
   5: };

寫操作

    注意事項

  • 要寫的文件需要用到輸出模式標志 ios::out和二進制操作模式標志ios::binary。
  • write()函數需要兩個參數.第一個參數是char*類型用來指定需要寫入的數據, 第二個參數是int類型指定寫入多少個字節.
  • 最后記得要用close()結束.

        // Sample for C++ File I/O binary file write

   1: void write_to_binary_file(WebSites p_Data)
   2: {
   3:     fstream binary_file("c:\\test.dat",ios::out|ios::binary|ios::app); 
   4:     binary_file.write(reinterpret_cast<char *>(&p_Data),sizeof(WebSites));
   5:     binary_file.close();
   6: } 

上面的例子把一個WebSites的對象追加進了c:\test.dat之中,ios::app是追加方式操作文件的標志。

上面的write函數,需要第一個參數為char*類型,所以用 reinterpret_cast轉換將這個對象地址轉換成char*類型.

讀操作

   跟上面的操作流程類似. 唯一不同在于使用輸入模式標志ios::in, 使用read()方法.

        // Sample for C++ File I/O binary file read

   1: void read_from_binary_file()
   2: {
   3:     WebSites p_Data;
   4:     fstream binary_file("c:\\test.dat",ios::binary|ios::in);
   5:     binary_file.read(reinterpret_cast<char *>(&p_Data),sizeof(WebSites));
   6:     binary_file.close();
   7:     cout<<p_Data.SiteName<<endl;
   8:     cout<<"Rank :"<< p_Data.Rank<<endl;
   9: } 

本文只是關于文件io流的一些基礎介紹,一些高級操作比如seek,檢查文件指針的有效性等等,也是需要學習的,這里就不多說了。

文章來源  我只是做一個簡短的翻譯

posted on 2008-05-09 14:41 Gohan 閱讀(22899) 評論(10)  編輯 收藏 引用 所屬分類: C++

Feedback

# re: 用fstream對二進制文件的讀寫 2008-05-09 16:49 陳梓瀚(vczh)

去年用VS2005的時候,fstream在遇到路徑含有中文的時候會掛。  回復  更多評論   

# re: 用fstream對二進制文件的讀寫 2008-05-10 00:10 wangyucao

看你空間還可以學習,真好……  回復  更多評論   

# re: 用fstream對二進制文件的讀寫 2008-05-10 20:19 Gohan

@陳梓瀚(vczh)
對,算是字符編碼的問題,以前我找到過解決方法,現下忘記了,完了貼上來,還請你多指點了:)。
http://m.shnenglu.com/gohan/archive/2008/05/11/49488.html
解決會掛的問題,呵呵  回復  更多評論   

# re: 用fstream對二進制文件的讀寫 2008-05-10 20:20 Gohan

@wangyucao
呵呵,隨便學學  回復  更多評論   

# re: 用fstream對二進制文件的讀寫 2009-07-04 01:26 程代宗

不知道為什么用這個方法總是讀取不到值...
#include "iostream"
#include "fstream"
#include "stdio.h"
using namespace std;

struct website
{
char site;
int id;
};
int main(int argc, char* argv[])
{
website web,getweb;
web.site = 'C';
web.id = 11;
fstream binary_file("1.dat",ios::out|ios::binary);
binary_file.write(reinterpret_cast<char *>(&web),sizeof(website));
binary_file.close;

ifstream fin("1.dat",ios::binary);
fin.read(reinterpret_cast<char *>(&getweb),sizeof(website));
fin.close();
char endmain = 'd';
char *end = &endmain;
gets(end);
return 0;
}   回復  更多評論   

# re: 用fstream對二進制文件的讀寫 2009-07-04 01:30 程代宗

不好意思...是因為文件還沒有寫進去就去讀的原因...  回復  更多評論   

# re: 用fstream對二進制文件的讀寫 2010-01-31 10:16 hmaya

寫的很清楚,一看就學會啦,謝謝老師:)  回復  更多評論   

# re: 用fstream對二進制文件的讀寫[未登錄] 2013-10-26 02:20 zhang

咋看不到二進制^  回復  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久久天天天天| 国产一区免费视频| 久久成人免费电影| 欧美一级黄色网| 亚洲人线精品午夜| 国产网站欧美日韩免费精品在线观看 | 亚洲最黄网站| 免费观看成人www动漫视频| 欧美色欧美亚洲高清在线视频| 久久性天堂网| 亚欧成人在线| 亚洲一区二区三区精品在线| 欧美高清不卡在线| 亚洲精品一区二区三区av| 亚洲片在线观看| 一级成人国产| 欧美中文字幕在线| 美女精品在线| 欧美日韩网址| 一区二区在线视频播放| 先锋a资源在线看亚洲| 欧美性做爰毛片| 欧美日韩精品免费| 国产午夜精品全部视频播放 | 在线不卡中文字幕| 亚洲欧洲美洲综合色网| 亚洲综合电影| 欧美电影在线播放| 亚洲午夜av| 欧美先锋影音| 亚洲精品在线视频观看| 亚洲欧美999| 亚洲免费福利视频| 欧美freesex交免费视频| 欧美亚男人的天堂| 在线视频你懂得一区| 久久久久国产精品厨房| 亚洲精美视频| 久久久噜噜噜久久| 激情久久久久久久久久久久久久久久| 亚洲精品国产系列| 欧美黄色网络| 欧美片在线观看| 在线日韩视频| 欧美视频手机在线| 亚洲精品免费在线播放| 免费短视频成人日韩| 久久中文在线| 一区二区高清| 亚洲一区二区日本| 国产精品一区二区男女羞羞无遮挡| 亚洲特色特黄| 亚洲一区视频在线| 国产一区二区久久久| 欧美成人综合| 欧美日韩精品免费观看视一区二区 | 国产欧美91| 欧美高清视频在线播放| 欧美搞黄网站| 欧美在线一二三四区| 久久久精品国产一区二区三区| 在线精品一区| 亚洲免费视频一区二区| 在线观看免费视频综合| 99热精品在线观看| 在线观看欧美黄色| 亚洲作爱视频| 日韩午夜激情电影| 久久久国产精品一区| 亚洲全部视频| 久久久女女女女999久久| 一本一道久久综合狠狠老精东影业 | 久久久国产成人精品| 99精品欧美一区二区三区| 亚洲国产精品精华液2区45| 欧美日韩亚洲国产精品| 亚洲国产天堂网精品网站| 亚洲第一主播视频| 久久久久九九视频| 老司机午夜精品视频在线观看| 国产精品男女猛烈高潮激情| 亚洲男女毛片无遮挡| 性欧美大战久久久久久久免费观看 | 亚洲人屁股眼子交8| 美国成人直播| 亚洲精品自在久久| 亚洲在线观看视频网站| 国产精品日韩在线观看| 蜜臀a∨国产成人精品| 亚洲精品午夜精品| 亚洲精品美女在线| 在线成人欧美| 亚洲午夜日本在线观看| 亚洲电影免费| 99精品欧美一区二区蜜桃免费| 亚洲第一区在线观看| 99国产成+人+综合+亚洲欧美| 国产精品三级视频| 男人的天堂成人在线| 免费在线成人av| 亚洲国产成人精品女人久久久 | 国产日韩欧美日韩| 久久乐国产精品| 久久综合九九| 国产综合香蕉五月婷在线| 久久久午夜电影| 亚洲精品少妇网址| 欧美一级在线亚洲天堂| 亚洲激情小视频| 欧美一区免费| 久久字幕精品一区| 亚洲人成在线观看| 欧美顶级艳妇交换群宴| 午夜精品在线看| 一本久久综合亚洲鲁鲁五月天| 久久综合中文字幕| 久久综合伊人77777| 一区二区日韩| 黄色日韩精品| 国产欧美一区二区三区在线看蜜臀| 欧美激情亚洲激情| 欧美日韩国产色站一区二区三区| 久久五月激情| 欧美日韩国产色站一区二区三区| 性欧美18~19sex高清播放| 欧美国产另类| 久久精品国产一区二区三| 亚洲欧美亚洲| 亚洲午夜一区二区| 久久成人国产| 欧美aa国产视频| 日韩一本二本av| 亚洲人成网站色ww在线| 狠狠入ady亚洲精品| 极品中文字幕一区| 一区二区三区欧美在线| 在线一区日本视频| 最新亚洲一区| 最新中文字幕亚洲| 亚洲精品国产日韩| 亚洲午夜在线| 亚洲欧洲精品天堂一级| 亚洲视频中文| 久久精品国产精品亚洲| 欧美日产在线观看| 亚洲精品123区| 午夜精品福利视频| 猫咪成人在线观看| 久久爱www久久做| 国产精品久久一级| 亚洲美女在线国产| 一区二区三区导航| 狼人天天伊人久久| 欧美国产亚洲另类动漫| 亚洲国产一区在线| 欧美精品二区三区四区免费看视频| 免费看的黄色欧美网站| 亚洲国产精品va在线观看黑人| 久久久蜜桃精品| 欧美jizzhd精品欧美巨大免费| 国语自产精品视频在线看8查询8 | 久久免费国产精品| 久久精品国产第一区二区三区| 国产亚洲综合在线| 久久精品视频播放| 免费精品视频| 日韩一区二区精品视频| 欧美视频中文在线看| 亚洲系列中文字幕| 久久久久99| 99精品国产热久久91蜜凸| 欧美日本三区| 欧美一区二区三区久久精品茉莉花 | 在线欧美三区| 欧美国产日本在线| 国产精品99久久久久久久久 | 亚洲国产精品黑人久久久| 亚洲福利视频二区| 欧美三级乱码| 久久电影一区| 亚洲美女区一区| 欧美综合二区| 正在播放欧美视频| 国产深夜精品福利| 欧美高清视频免费观看| 亚洲先锋成人| 免费观看久久久4p| 亚洲摸下面视频| 亚洲国产一二三| 国产一区二区三区四区在线观看| 裸体一区二区三区| 亚洲免费影院| 亚洲黄色av| 久久夜色精品一区| 亚洲一区二三| 亚洲国产影院| 尤妮丝一区二区裸体视频| 欧美性猛交xxxx乱大交退制版| 久久久噜噜噜久久人人看| 亚洲免费视频观看|