马上注册,结交更多易友,享用更多功能,让你轻松玩转觅风论坛。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
想要复制指定格式的数据 如:带格式的html文本 带格式的excel数据 任何聊天程序的复杂数据.... 看着一个教程就够了本来不想发这个帖子的 我记得之前也有很多复制QQ图文数据的源码 但是这里还是重新写一下 我觉得思路真的很简单 但是不知道为什么有人会跟我杠
1.复制原始数据
想办法得到一个你要复制的数据格式,这里既然要做QQNT的聊天所以需要在QQ中发送或者输入一条示例文本然后复制
这里在QQ聊天框输入内容
这时候可以直接复制也可以发送后复制,只要确定复制后粘贴到这里依然可以正常读取即可
2.获取剪辑板原始数据
- .版本 2
- .支持库 spec
- .子程序 getClipboardData
- .局部变量 clipboarDataArray, 剪辑版数据, , "0"
- .局部变量 i, 整数型
- 剪辑板_取所有内容 (clipboarDataArray) ' 获取你复制的所有内容
- .计次循环首 (取数组成员数 (clipboarDataArray), i)
- 调试输出 (clipboarDataArray <i>.剪辑版数据格式, clipboarDataArray <i>.字节集长度, clipboarDataArray <i>.文本型数据)
- .计次循环尾 ()
复制代码
可以得到以下数据
- .版本 2
- ' 1: 50305 | 416 | “QQ_Unicode_RichEdit_Format”
- ' 2: 49468 | 460 | “HTML Format”
- ' 3: 49469 | 4 | “Preferred DropEffect”
- ' 4: 15 | 486 | “”
复制代码 此处根据字节集长度来看,明显不是图片数据,如果是图片数据字节集长度不会这么短
那么这时候就用 到文本 / utf8转ansi / unicode转文本 得到明文数据 90%的数据用utf8存取 剩下少部分为 unicode或者明文存取 这里要注意 utf8转ansi 和 到文本 如果在没有中文或者一些外国语言的情况下获取的数据是一样的 尽量复制带中文的数据来获取
再次修改上面的代码改为
- .版本 2
- .支持库 spec
- .子程序 getClipboardData
- .局部变量 clipboarDataArray, 剪辑版数据, , "0"
- .局部变量 i, 整数型
- 剪辑板_取所有内容 (clipboarDataArray) ' 获取你复制的所有内容
- .计次循环首 (取数组成员数 (clipboarDataArray), i)
- 调试输出 (clipboarDataArray <i>.剪辑版数据格式, clipboarDataArray <i>.字节集长度, clipboarDataArray <i>.文本型数据)
- 调试输出 (编码_Utf8到Ansi (clipboarDataArray <i>.字节集数据)) ' 到文本 utf8转ansi unicode转文本 特别注意 utf8转ansi 和 到文本 如果在没有中文的情况下获取的数据是一样的 99%的程序都是用的utf8编码 这里尽量复制点中文数据试一下
- .计次循环尾 ()
复制代码 数据1、2得到两串明文数据 3、4 为乱码数据
因为格式文本复制到这里会无法展示 所以使用图片显示
其实这里也可以看的出来 数据1是QQ专用的复制格式 数据2是html的通用复制格式 是为了兼容添加的 我们只需要修改数据1中的数据复制即可 当然 更推荐修改第二种 一般主流的聊天工具都会兼容html QQ通用数据可能没有适配的那么好 当然 QQ和WeChat都是支持的 其他数据我们暂时不需要处理 只需要拷贝其中任何一条即可 如果出现问题再来处理其他的数据 一般哪怕你修改内容 也直接按照之前的数据置入即可 直接 调试输出(clipboarDataArray .字节集数据) 得到原始字节集数据 置入进去就好了
3.置剪辑板数据
既然得到格式了 稍作修改再置入即可 这里直接按照格式置入文本数据试一下
|
|