URL:http://www.gagalive.kr/livechat1.swf?chatroom=~~~BBQデルファイXE2:UTF16LE - > UTF8
[1] ------------------------------ -------------------------------------
procedure TForm1.FormCreate(Sender: TObject);
begin
IdTCPClient.Host := '61.97.246.131';
IdTCPClient.Port := 8080;
IdTCPClient.Connect;
IdTCPClient.IOHandler.Write('Ag8m' + Char(0));
IdTCPClient.IOHandler.Write('LShady|###BBQ' + Char(0));
IdTCPClient.IOHandler.Write('#' + 'Some Text' + Char(0));
IdTCPClient.Disconnect;
end;
[2] -------------------------------------------------- -----------------
function UTF8FromUTF16_2(sUTF16: UnicodeString): UTF8String;
begin
Result := sUTF16;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
IdTCPClient.Host := '61.97.246.131';
IdTCPClient.Port := 8080;
IdTCPClient.Connect;
IdTCPClient.IOHandler.Write('Ag8m' + Char(0));
IdTCPClient.IOHandler.Write('LShady|###BBQ' + Char(0));
IdTCPClient.IOHandler.Write(UTF8FromUTF16_2('#' + '안녕' + Char(0)));
IdTCPClient.Disconnect;
end;
[1]:作業
[2]:機能していない(文字列壊れ>シェイディ:??)
参照:http://www.gagalive.kr/livechat1.swf?chatroom=~~~BBQ
UTF8FromUTF16機能オリジナルVBコード:VB 6.0 -> Delphi XE2 Conversion
私を助けて.. :(
2動作していませんか? 1.あなたが何を期待し、何を得たかを記述します。 – GolezTrol
1. char(0)<> ansichar(0)あなたはonecharte型にanischar(0)を添付したいでしょうか?2. write()は本当にrawbytestringですか?それがstringとして宣言されていれば、とにかくUTF16に変換されます。 –
ええ、「うまくいきません」とはかなり希望がありません。どの書き込みオーバーロードを使用していますか?文字列1?それはUTF-16に変換されます。おそらく、UTF-8を保持するために直接バイトを書く必要があります。しかし、私は実際に何が間違っているのか分からないので、私は推測しています。 –