最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

深入C語言把文件讀入字符串以及將字符串寫入文件的解決方法

 更新時(shí)間:2013年05月13日 09:53:04   作者:  
本篇文章是對C語言把文件讀入字符串以及將字符串寫入文件的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

1.純C實(shí)現(xiàn)

復(fù)制代碼 代碼如下:

 FILE *fp;
 if ((fp = fopen("example.txt", "rb")) == NULL)
 {
  exit(0);
 }
 fseek(fp, 0, SEEK_END);
 int fileLen = ftell(fp);
 char *tmp = (char *) malloc(sizeof(char) * fileLen);
 fseek(fp, 0, SEEK_SET);
 fread(tmp, fileLen, sizeof(char), fp);
 fclose(fp);
 for(int i = 0; i < fileLen; ++i)
 {
  printf("%d  ", tmp[i]);
 }
 printf("\n");

 if ((fp = fopen("example.txt", "wb")) == NULL)
 {
  exit(0);
 }
 rewind(fp);
 fwrite(tmp, fileLen, sizeof(char), fp);
 fclose(fp);
 free(tmp);


2.利用CFile(MFC基類)

CFile需要包含的頭文件為Afx.h

打開文件的函數(shù)原型如下

if(!(fp.Open((LPCTSTR)m_strsendFilePathName,CFile::modeRead)))

有多種模式,常用的有如下:

modeRead

modeWrite

modeReadWrite

modeCreate

文件類型有兩種:

typeBinary

typeText

讀寫非文本文件一定要用typeBinary

讀取數(shù)據(jù)的函數(shù)原型:

virtual UINTRead(void*lpbuf, UINT nCount);


將文件讀出:

復(fù)制代碼 代碼如下:

CFile fp;
if(!(fp.Open((LPCTSTR)m_strsendFilePathName,CFile::modeRead)))
{
    return;
}
fp.SeekToEnd();
unsignedint fpLength = fp.GetLength();
char *tmp= new char[fpLength];
fp.SeekToBegin();    //這一句必不可少
if(fp.Read(tmp,fpLength) < 1)
{
    fp.Close();
    return;
}

// 新建文件并寫入
復(fù)制代碼 代碼如下:

if(!(fp.Open((LPCTSTR)m_strsendFilePathName,
        CFile::modeCreate | CFile::modeWrite |CFile::typeBinary)))
{
    return;
}
fp.SeekToBegin();
fp.write(tmp,fpLength);
fp.close;

相關(guān)文章

  • C++之eigen安裝與測試方式

    C++之eigen安裝與測試方式

    這篇文章主要介紹了C++之eigen安裝與測試方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • C++初階之list的模擬實(shí)現(xiàn)過程詳解

    C++初階之list的模擬實(shí)現(xiàn)過程詳解

    在C++中我們經(jīng)常使用STL,那個(gè)在那些我們常用的數(shù)據(jù)結(jié)構(gòu)vector,list的背后,又是如何實(shí)現(xiàn)的呢?這篇文章主要給大家介紹了關(guān)于C++初階之list的模擬實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • C語言超細(xì)致講解分支語句

    C語言超細(xì)致講解分支語句

    分支結(jié)構(gòu)的執(zhí)行是依據(jù)一定的條件選擇執(zhí)行路徑,而不是嚴(yán)格按照語句出現(xiàn)的物理順序。分支結(jié)構(gòu)的程序設(shè)計(jì)方法的關(guān)鍵在于構(gòu)造合適的分支條件和分析程序流程,根據(jù)不同的程序流程選擇適當(dāng)?shù)姆种дZ句
    2022-05-05
  • 虛函數(shù)被類的構(gòu)造析構(gòu)函數(shù)和成員函數(shù)調(diào)用虛函數(shù)的執(zhí)行過程

    虛函數(shù)被類的構(gòu)造析構(gòu)函數(shù)和成員函數(shù)調(diào)用虛函數(shù)的執(zhí)行過程

    虛函數(shù)被類的構(gòu)造析構(gòu)函數(shù)和成員函數(shù)調(diào)用虛函數(shù)的執(zhí)行過程,需要的朋友可以參考下
    2013-02-02
  • C語言實(shí)現(xiàn)簡單回聲服務(wù)器

    C語言實(shí)現(xiàn)簡單回聲服務(wù)器

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)簡單回聲服務(wù)器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 最大對稱字符串的算法

    最大對稱字符串的算法

    題目:輸入一個(gè)字符串,輸出該字符串中對稱的子字符串的最大長度。比如輸入字符串“google”,由于該字符串里最長的對稱子字符串是“goog”,因此輸出4。
    2013-03-03
  • 詳解C語言中strpbrk()函數(shù)的用法

    詳解C語言中strpbrk()函數(shù)的用法

    這篇文章主要介紹了詳解C語言中strpbrk()函數(shù)的用法,是C語言入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-08-08
  • C語言的變量與常量 字符字符串與轉(zhuǎn)義字符詳解

    C語言的變量與常量 字符字符串與轉(zhuǎn)義字符詳解

    這篇文章主要介紹了詳解C語言的變量與常量 字符字符串與轉(zhuǎn)義字符,包括其之間的區(qū)別是C語言入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2021-10-10
  • c++中new的三種用法詳細(xì)解析

    c++中new的三種用法詳細(xì)解析

    以下的是對c++中new的三種使用方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-09-09
  • C++實(shí)現(xiàn)涂色游戲(博弈)

    C++實(shí)現(xiàn)涂色游戲(博弈)

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)涂色游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02

最新評論

蓬安县| 祁连县| 宕昌县| 福贡县| 蚌埠市| 定安县| 巴林右旗| 南汇区| 会宁县| 岳池县| 仁寿县| 麻栗坡县| 库尔勒市| 玉山县| 泾川县| 依安县| 彭阳县| 凉山| 扶余县| 新野县| 宜章县| 府谷县| 青岛市| 商洛市| 定远县| 英德市| 如东县| 犍为县| 峨山| 宁河县| 那坡县| 霍邱县| 哈尔滨市| 花莲市| 百色市| 柘荣县| 田林县| 铜川市| 中卫市| 宝兴县| 遂川县|