2016-09-16 4 views
0

私はgsoap 2.8.31を使用しており、スタンドアロンサーバを開発しました。latin1エンコーディングスタイルでレスポンスを生成できませんでした - gsoap C++

出力をlatin-1エンコーディングで生成する必要があります。デフォルトでは、UTF-8エンコーディングで応答します。

は、私のコードでlatin-1にomodeを設定するには、以下のメソッドを含ま

soap_set_omode(soap,SOAP_ENC_LATIN); 
soap_omode(soap,SOAP_ENC_LATIN); 

しかし、これらを含めた後、latin-1エンコーディングに対応して反映変更を見ることができませんでした。

エンコードスタイルと文字セットを設定する方法が見つからない場合は、latin-1にお知らせください。

多くの方々のおかげです。

答えて

0

入力モードフラグSOAP_ENC_LATINは、ISO-8859-1でエンコードされたXMLを検出すると、XMLパーサによって自動的に設定されます。そこISO-8859-1の出力を強制するメカニズムはありませんが、次のようにXML宣言を置き換えることができます:

soap->prolog = "<?xml version=\"1.0\" encoding=\"latin1\"?>\n"; 

エンコードされてしまいますこれは、送信するためにXMLペイロード内の任意のUnicode文字を使用しないようにしてくださいUTF-8で

関連する問題