5

ファイルのData-Urlを std:string として持っています。base64 でエンコードされたデータをデコードしてから、この関数に渡す必要があります。

open (const byte *  data, long size)

まず、エンコードされたデータを抽出します

size_t pos = dataurl.find_first_of(',');
std::string encoded = dataurl.substr(spos + 1);

次に、このbase64デコーダーを使用します

std::string decoded = base64_decode(encoded);

さて、文字列型の「デコード済み」をバイト*にキャストするにはどうすればよいですか? 次のコードはエラーを生成します

open((byte *)decoded.c_str(), decoded.size() + 1);
//>>error: 'byte' was not declared in this scope

/EDIT:だからtypedefがあります

typedef uint8_t     byte

エンコードされたデータは画像です!

4

2 に答える 2

1

を削除しているようですconstc_str()を返しますconst char *。あなたのキャストは(const byte *).

于 2012-10-09T16:44:09.597 に答える