亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

深入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語言指針應(yīng)用簡單實(shí)例

    C語言指針應(yīng)用簡單實(shí)例

    這篇文章主要介紹了C語言指針應(yīng)用簡單實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • C++中的移動(dòng)構(gòu)造函數(shù)及move語句示例詳解

    C++中的移動(dòng)構(gòu)造函數(shù)及move語句示例詳解

    這篇文章主要給大家介紹了關(guān)于C++中移動(dòng)構(gòu)造函數(shù)及move語句的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用C++具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-10-10
  • 詳解C語言結(jié)構(gòu)體的定義和使用

    詳解C語言結(jié)構(gòu)體的定義和使用

    這篇文章主要為大家介紹了C語言結(jié)構(gòu)體的定義和使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • C語言函數(shù)之memcpy函數(shù)用法實(shí)例

    C語言函數(shù)之memcpy函數(shù)用法實(shí)例

    memcpy函數(shù)用于把資源內(nèi)存(src所指向的內(nèi)存區(qū)域)拷貝到目標(biāo)內(nèi)存(dest所指向的內(nèi)存區(qū)域),下面這篇文章主要給大家介紹了關(guān)于C語言函數(shù)之memcpy函數(shù)用法的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • C語言二叉排序樹的創(chuàng)建,插入和刪除

    C語言二叉排序樹的創(chuàng)建,插入和刪除

    本文主要介紹了Java實(shí)現(xiàn)二叉排序樹的查找、插入、刪除、遍歷等內(nèi)容。具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2021-10-10
  • C語言操作符基礎(chǔ)知識(shí)圖文詳解

    C語言操作符基礎(chǔ)知識(shí)圖文詳解

    這篇文章主要以圖文結(jié)合的方式為大家詳細(xì)介紹了C語言位運(yùn)算基礎(chǔ)知識(shí),感興趣的小伙伴們可以參考一下,希望能給你帶來幫助
    2021-08-08
  • C語言面試C++字符串替換空格示例

    C語言面試C++字符串替換空格示例

    這篇文章主要介紹了C語言面試中C++字符串替換空格示例,文中給出了基本上可以拿下offer的代碼,有需要的朋友可以借鑒參考下,希望大家都能早日拿到心儀的offer
    2021-09-09
  • 深入解析C++和JAVA的字符串

    深入解析C++和JAVA的字符串

    這篇文章主要介紹了C++和JAVA的字符串,JAVA 中String 和StringBuffer的區(qū)別,需要的朋友可以參考下
    2015-07-07
  • sqlserver,sqlite,access數(shù)據(jù)庫鏈接字符串整理

    sqlserver,sqlite,access數(shù)據(jù)庫鏈接字符串整理

    本節(jié)主要整理sqlserver,sqlite,access數(shù)據(jù)庫鏈接字符串,有需要的朋友可以參考下
    2014-07-07
  • C語言實(shí)現(xiàn)飛機(jī)游戲(進(jìn)階版)的示例代碼

    C語言實(shí)現(xiàn)飛機(jī)游戲(進(jìn)階版)的示例代碼

    在前文中,已經(jīng)帶大家利用C語言實(shí)現(xiàn)了簡單的飛機(jī)游戲,但它還存在一些缺陷。因此,本文將給大家?guī)磉M(jìn)階版的飛機(jī)游戲,需要的可以參考一下
    2022-10-10

最新評論