通过如下代码在剪贴板中获取含HTML格式的文本时发现当内容出现汉字的时候会有乱码
if
(
Clipboard
.
ContainsText(TextDataFormat.Html))
textBox1.Text = Clipboard.GetText(TextDataFormat.Html);
通过剪贴板工具分析,HTML格式的文本是UTF8编码方式
看来Clipboard.GetText()是解码出了问题
那就自己来完成这个解码工作吧!
if (Clipboard.ContainsText(TextDataFormat.Html))
{
Clipboard 类提供一个容器,用于通过剪贴板传输数据和对象。在 AIR 中,Clipboard 类还用于拖放操作。通过静态 generalClipboard
属性可以访问操作系统剪贴板。
Clipboard 对象可以包含多种格式的相同信息。通过以多种格式提供信息,可以增加另一个应用程序能够使用该信息的机会。使用 setData()
或 setDataHandler()
方法向 Clipboard 对象添加数据。
标准格式是:
- BITMAP_FORMAT:BitmapData 对象(仅限 AIR)
- FILE_LIST_FORMAT:File 对象的数组(仅限 AIR)
- HTML_FORMAT:HTML 格式的字符串数据
- TEXT_FORMAT:字符串数据
- RICH_TEXT_FORMAT:包含 RTF 格式数据的 ByteArray
- URL_FORMAT:URL 字符串(仅限 AIR)
ClipboardFormats 类中定义了用作标准格式的名称的这些常量。