麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > C > 正文

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

2020-01-26 16:15:01
字體:
來源:轉載
供稿:網友

1.純C實現

復制代碼 代碼如下:

 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

打開文件的函數原型如下

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

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

modeRead

modeWrite

modeReadWrite

modeCreate

文件類型有兩種:

typeBinary

typeText

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

讀取數據的函數原型:

virtual UINTRead(void*lpbuf, UINT nCount);


將文件讀出:

復制代碼 代碼如下:

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;
}

// 新建文件并寫入
復制代碼 代碼如下:

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 国产成人精品无人区一区 | 欧美在线观看视频网站 | 国产在线观看91一区二区三区 | 色网站免费观看 | 性欧美大战久久久久久久免费观看 | 精品在线视频播放 | 4p嗯啊巨肉寝室调教男男视频 | 国产精品剧情一区二区在线观看 | 亚洲最大的成人网 | 在线观看av国产一区二区 | 亚州精品国产 | 亚洲免费视 | www亚洲免费 | 日韩精品中文字幕一区二区三区 | 黄色网欧美 | 狠狠操精品视频 | 久久毛片免费观看 | 欧美久久久久久久久 | 久久精品一二三区白丝高潮 | 美女擦逼 | 国产精品啪一品二区三区粉嫩 | 午夜精品在线视频 | 极品销魂一区二区三区 | 黄色片网站在线播放 | 亚洲涩涩图 | 欧美性生活久久久 | 美女视频网站黄色 | 色无极影院亚洲 | 污污黄| 超碰97在线人人 | 一本一本久久a久久精品综合小说 | 日韩中文字幕一区二区三区 | 国产免费资源 | 久久国产精品久久久久久久久久 | 超碰97最新| 亚洲小视频在线观看,com | 九九热九九爱 | 99综合视频 | 日本在线不卡一区二区 | 国产亚洲精品久久久久久久 | 国产69精品久久久久孕妇黑 |