Mam klucz potencjalny (MongoDB klucz potencjalny, __id) ów wygląda następująco w buforach Protokół:kodowanie transportowe, znaki niedrukowalne, bufory protokół, MongoDB i bson
message qrs_signature
{
required uint32 region_id = 1;
repeated fixed32 urls = 2;
};
Naturalnie Nie mogę użyć łańcucha zakodowanych w buforze protokołów (przez ParseToString(std::string)
) w moim dokumencie na temat pasma, ponieważ może on zawierać znaki niedrukowalne. Dlatego używam kodowania ascii85 do kodowania danych (używając this library). Mam dwa pytania.
- Czy kodowanie b85 jest bson-safe.
- Co to jest bson's binary type for? czy jest jakiś sposób, że mogę wszczepić mój (binarny) ciąg do tego pola za pomocą wywołania API mongodb, czy jest to po prostu cukier syntaktyczny oznaczający typ wartości, który musi być przetworzony w jakiejś formie (- nie, nie jest rodzimy jednostka mongodb)?
edit
dane na append binary
API serialu jest zakodowany jako hex (OMG!), Base85 jest zatem bardziej wydajny przestrzeń (22 bajtów na rekord w moim przypadku).
Aha, dziękuję za walidację, teraz widzę, że istnieje specyficzna metoda dodawania danych binarnych o nazwie 'BSONObjBuilding :: AppendBinData', która zajmuje pole długości. –