C#クリップボードからHTML形式のコンテンツを取得中国語文字を含む問題と解決方法
2596 ワード
次のコードでクリップボードからHTML形式のテキストを取得すると、内容に漢字が表示されると文字化けしてしまうことがわかります
クリップボードツールの解析により、HTML形式のテキストはUTF 8符号化方式で見たところClipboard.GetText()は復号に問題があったので、自分でこの復号を完成しましょう.
回転:
http://www.csharpwin.com/csharpspace/9097r5853.shtml
WebBrowserは、エンコードされたプロトタイプコードを設定します.
IHTMLDocument2 m_hDoc = (IHTMLDocument2)axWebBrowser1.Document;
m_hDoc.charset = "gb2312";
if
(Clipboard.ContainsText(TextDataFormat.Html))
textBox1.Text
=
Clipboard.GetText(TextDataFormat.Html);
クリップボードツールの解析により、HTML形式のテキストはUTF 8符号化方式で見たところClipboard.GetText()は復号に問題があったので、自分でこの復号を完成しましょう.
if
(Clipboard.ContainsText(TextDataFormat.Html))
{
MemoryStream vMemoryStream
=
Clipboard.GetData(
"
Html Format
"
)
as
MemoryStream;
vMemoryStream.Position
=
0
;
byte
[] vBytes
=
new
byte
[vMemoryStream.Length];
vMemoryStream.Read(vBytes,
0
, (
int
)vMemoryStream.Length);
textBox1.Text
=
Encoding.UTF8.GetString(vBytes);
}
回転:
http://www.csharpwin.com/csharpspace/9097r5853.shtml
WebBrowserは、エンコードされたプロトタイプコードを設定します.
IHTMLDocument2 m_hDoc = (IHTMLDocument2)axWebBrowser1.Document;
m_hDoc.charset = "gb2312";