你现在的位置 :
教程
=>
软件开发
=>
VB.NET
=>Vb.net进阶:.NET 中的代码页(CodePage)
文章搜索
Vb.net进阶:.NET 中的代码页(CodePage)
时间: 2006-07-18 来自:YidingHe
如果你还在为这种事情烦恼:
那这篇文章对你来说是有用的。
为什么会出现这种事情呢?因为这些乱码本来不属于我们现在所用的代码页(简体中文,GB2312)。
关于代码页的介绍请看MSDN2003中的“
代码页的编码支持
”。
怎样才能将乱码还原成“本来面目”呢?我们要做的就是将乱码字符串化解为Byte数组,然后用正确的代码页将其重新编码。怎样取得正确的代码页呢?在MSDN中有一张表介绍了个代码页及其相对应的整数值。比如简体中文是936,繁体中文是950,日文是932,朝鲜语是949。
MSDN中的代码页列表是在:
http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/act/htm/actml_ref_scpg.asp
这里直接给个例子,说明如何还原乱码:
Private Function ConvertTo(ByVal
str
As String) As String
Dim
ec
As System.Text.Encoding = System.Text.Encoding.GetEncoding(
CodePage
)
Return
ec
.GetString(
System.Text.Encoding.Default.GetBytes(str)
)
End Function
在这里,str是要转换的乱码,
CodePage
是一个整数,对应要转换的代码页的数值。这个函数就是返回还原后的乱码的。从ec的定义可以看到它是根据
CodePage
创建的。红棕色部分是把字符串分解成Byte数组,然后再用
ec
的
GetString
方法重新编码。返回的结果就可以直接显示了。怎么样,简单吧?下面是一些效果:
相关文章
标签
NewsAbout
错误:Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
标题
正文
热点排行
.NET框架下使用双缓冲
VB API函数大全
用VB.NET做个自动发
利用.NET绘图技术制作
VB中DataGrid控件对
走近VB.Net(十一) 随
.NET框架下使用双缓冲
微软推出针对初学者的V
最新VisualStudio2008
在VB环境中操作三维模
VB自动登陆网络站点详
定制VB.NET控件编程
VB中使用DirectX库的
最新文章
在VS2005中调试Windo
代码实例用VB.NET2
VB.NET实现窗体图标
利用ExeScript增强脚本
Apple全球开发者会议J
使用VB将ASP代码封
微软推出针对初学者的V
WinVista新技术 WCF
Linux设备驱动编程之异
利用.NET绘图技术制作
用VB6写简单程序 让电
使用.NET向浏览器写入