-1

libcurl を使用して Web サイトに接続し、HTML を取得しています。また、LibTidy を使用してテキストを抽出しています。私の目的は、テキスト ファイルの文が HTML 内にあるかどうかを確認することです。

LibTidy のおかげで、すべてのテキスト ファイルが 1 つの char* になっています。2 つの文字列を比較するために : char *strstr(const char *one, const char *two) を使用しています。1 つ目は libcurl および libTidy 解析からの文字列で、2 つ目はテキスト ファイルからの文字列です。

関数 strstr(..) を使用しているとき、結果として NULL が得られます。デバッガーを使用すると、2 つの文字列が同じように「エンコード」されていないことがわかります。

ここに画像の説明を入力

インターネット接続の結果、文字列の問題がどこにあるのかを見つけようとしました。そして、それを修正するために別のコードサンプルを試しました。

libcurl Web サイトで提供されたコードは、同じ問題を引き起こします。char *memory が適切にエンコードされておらず、適切に比較できません。 https://curl.haxx.se/libcurl/c/getinmemory.html

ここのコードも試しました: https://stackoverflow.com/a/2329792/10160890、および char *ptr には同じ問題があります。

libcurl の文字列とテキスト ファイルの文字列を比較できると期待しています。

4

1 に答える 1