[英]reading/writing unsigned char array from/to file using filestream
[英]Reading text from file to unsigned char array
我希望使用OpenSSL來加密文件中的文本,並且在加密之前需要將文本放在unsigned char數組中。 從文件讀取文本到unsigned char數組最簡單的方法是什么?
你的問題被標記為C和C ++ (這不是建設性的) 。 我將給出C ++的答案。
#include <fstream>
#include <iterator>
#include <vector>
using namespace std;
int main()
{
ifstream in("filename.txt"); //open file
in >> noskipws; //we don't want to skip spaces
//initialize a vector with a pair of istream_iterators
vector<unsigned char> v((istream_iterator<unsigned char>(in)),
(istream_iterator<unsigned char>()));
...
}
以您喜歡的任何數據類型讀取它。 轉換為(unsigned char*)
可以保證您訪問各個字節。
編輯:這是C的答案,而不是C ++。 最初的問題也被標記為C.
網上必須有大量關於如何做到這一點的例子。 唯一棘手的部分是你幾乎肯定需要為數組動態分配內存,以保證你不會讀取比數組中更多的輸入。 此外,如果需要處理不適合單個字節數組的大型文件(例如,幾GB或更大),則需要進行更多研究。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.