VB 实现UTF-8 与GB2312互转

这篇博客介绍了如何在VB中实现UTF-8与GB2312编码之间的相互转换,提供了两个函数:GB2312ToUTF8和UTF8ToGB2312,利用ADODB.Stream对象完成转换操作。同时还分享了与VB编程相关的其他文章链接,涵盖了文本处理、文件操作、窗体交互等多个方面。

模块代码如下:

'* ************************************** *
'* 模块名称:modCharset.bas
'* 模块功能:GB2312与UTF8相互转换函数
'* 作者:lyserver
'* ************************************** *

Option Explicit

'- ------------------------------------------- -
' 函数说明:GB2312转换为UTF8
'- ------------------------------------------- -
Public Function GB2312ToUTF8(strIn As String, Optional ByVal ReturnValueType As VbVarType = vbString) As Variant
Dim adoStream As Object

Set adoStream = CreateObject("ADODB.Stream")
adoStream.Charset = "utf-8"
adoStream.Type = 2 'adTypeText
adoStream.Open
adoStream.WriteText strIn
adoStream.Position = 0
adoStream.Type = 1 'adTypeBinary
GB2312ToUTF8 = adoStream.Read()
adoStream.Close

If ReturnValueType = vbString Then GB2312ToUTF8 = Mid$(GB2312ToUTF8, 1)
End Function

'- ------------------------------------------- -
' 函数说明:UTF8转换为GB2312
'- ------------------------------------------- -
Public Function UTF8ToGB2312(ByVal varIn As Variant) As String
Dim bytesData() As Byte
Dim adoStream As Object

bytesData = varIn
Set adoStream = CreateObject("ADODB.Stream")
adoStream.Charset = "utf-8"
adoStream.Type = 1 'adTypeBinary
adoStream.Open
adoStream.Write bytesData
adoStream.Position = 0
adoStream.Type = 2 'adTypeText
UTF8ToGB2312 = adoStream.ReadText()
adoStream.Close
End Function


 

 

VB相关


VB 读写TXT文本文件函数

VB 提取TextBox 文本框中指定一行字符串

VB 获取汉字拼音的首字母

VB 汉字字符串转换成拼音

VB判断指定名字的进程是否存在函数

VB 两种方法实现热键

VB 使用SendMessage枚举文件与目录

VB 二进制数组与十六进制字符串相互转换

VB 二进制数据读写实例

VB 进制转换大全(十进制、十六进制、八进制、二进制、二进制流)互转

VB 判断是否文本文件

VB 读取UTF-8编码文件函数

VB 按指定编码格式写入文本文件

VB UTF-8 URL编码函数

VB 实现UTF-8 GB2312互转

VB 设置ListView中指定一行的背景颜色

VB SendMessage向其他程序窗口发送字符串消息实例

VB Listview导出到CSV文件函数

vb卸载所有窗体

VBNull, Empty, Nothing, and vbNullString的区别

利用API函数计算程序运行时间VB

获取快捷方式原文件路径vb路径

利用VB函数Dir()实现递归搜索目录

VB数组的清除和重新定义

RtlAdjustPrivilege来调整进程权限(VB6.0代码)

获取对象的接口信息(方法/属性/事件)(VB6代码)

VB6中给数组赋值的限制

[vb]一些窗口消息的详解

VB直接播放EXE文件中的声音文件

VB中利用CopyMemory使用指针

VB读写注册表的三种方法

[VB]SaveSetting 语句 和 DeleteSetting 语句

VB APP对象属性一览表 + 灵活使用VBAPP对象

[vb]SendMessageA函数

使用VB绘制抛物线动画曲线

关于vb中的容器

[vb]利用WScript.Shell对象隐藏cmd命令行运行

浅析VB For Each.Next语句

VB中窗体模块、标准模块、类模块的区别

引用 VB类模块

VB中什么是类,类模块有什么作用

VB SendKeys 语句

VB 全局热键

VB轻松调用其他程序

vb读取txt文件到textbox

如何去优化你的VB程序3

如何去优化你的VB程序2

如何去优化你的VB程序1

[VB]在状态栏中显示帮助信息

[VB]把屏幕保存为图像

Mp3Play.ocx控件让音乐之声响起来


更多精彩>>>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值