亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

想從txt讀取第一行并保存成unsigned char[],請問該如何做?

想從txt讀取第一行并保存成unsigned char[],請問該如何做?

C++
大話西游666 2022-05-26 15:11:40
txt里有一行文字例如 00224dc2a4e0,現在我要把這行讀取出來并保存成下面這個樣子的unsigned char BTMAC[6] = {0x00,0x22,0x4d,0xc2,0xa4,0xe0};請問該如何操作?txt文本只有這一行而且長度固定TCHAR BTFILE[256]={“PATH.txt”}; //隨便寫的路徑FILE *fp;fp=_tfopen(BTFILE,L"r");//fread ?
查看完整描述

1 回答

?
繁華開滿天機

TA貢獻1816條經驗 獲得超4個贊

可以使用C++的庫函數getline實現。
getline會生成一個包含一串從輸入流讀入的字符的字符串,直到以下情況發生會導致生成的此字符串結束。
1)讀到文件結束符;
2)遇到函數指定的結束符;
3)輸入達到最大限度。
getline有兩種重載:

istream &getline( char *buffer, streamsize num );
istream &getline( char *buffer, streamsize num, char delim );
參數說明:
buffer: 讀取的數據將存在buffer中。
num:最多讀取num個字符。即之前所說的最大限度。
delim:結束符,當遇到指定的結束符時將結束輸入。在第一種重載中,結束符為\n,即遇到換行結束。

所以要實現整行讀取,使用第一種重載就可以了。示例代碼如下:
#include <iostream>
using namespace std;
int main()
{
char buf[1024];//存儲的buf。
while(getline(buf,sizeof(buf)))//讀取一行。
{
cout << "read line:" <<buf<<endl;//輸出讀取到的數據。
}

return 0;
}



查看完整回答
反對 回復 2022-05-30
  • 1 回答
  • 0 關注
  • 152 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號