簡體   English   中英

ParseFromArray 函數如何在 C++ 中工作以及如何使用它將二進制文件讀入 protobuf?

[英]How does the ParseFromArray function work in C++ and how can it be used to read a binary file into a protobuf?

我有點不確定 C++ 中的 ParseFromArray(...) 函數究竟是如何工作的。 它究竟做了什么以及如何使用它? 例如,如果我試圖將一個二進制文件讀入 protobuf,我該如何使用 ParseFromArray(...) 來做到這一點。 任何幫助表示贊賞。

通常,如果您想從文件中解析 protobuf,您將確保以二進制模式打開文件,然后調用ParseFromIstream

ParseFromArrayParseFromString (僅在其參數的數據類型上有所不同)用於解析已經在內存中的 protobuf。 如果 protobuf 只是文件的一部分,並且您知道如何提取字節,您可能想要這樣做。 如果您將字節提取(或讀取)為std::string ,則可以使用ParseFromString ,但大多數情況下您將使用std::istream::read讀取二進制文件,並且該函數將數據讀入緩沖區(這是一個char數組)。 然后,您將使用緩沖區的起始地址(轉換為void* )及其長度調用ParseFromArray

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM