sqlserver 数据库数据 转到mysql时出现乱码
作者:admin 日期:2008-11-22
有个老asp站.写了段脚本想把产品详细说明导入到ecshop里面来.
导入成功..
但是发现中文全部乱码了.....
请问如果解决.
据了解sqlserver的默认编码应该是iso-8859-1的.
mysql的默认编码应该是latin1
两个编码应该是一样的吧....
-----------------------------------------------------------------------------
ecshop默认是utf-8的解析方式....
为了避免大家犯我同样的错误...我把asp下的编码转换函数帖出来...
Function FilterUnicode2UTF_8(ByRef strUnicode)
dim i,strMid,strStream,ascWord
'strUnicode=Replace(strUnicode,vbCrLf,"")
for i=1 to len(strUnicode)
strMid=Mid(strUnicode,i,1)
ascWord=Asc(strMid)
if (ascWord<0 or ascWord>127) then
strStream=strStream+""+FormatHex4(ascW(strMid))+";"
else
strStream=strStream+strMid
end if
next
FilterUnicode2UTF_8=strStream
End Function
Function FormatHex2(num)
num=num and &HFF
if num<16 then
FormatHex2="0"+Hex(num)
else
FormatHex2=Hex(num)
end if
End Function
Function FormatHex4(num)
dim high,low
high=(num and &HFF00)\&H100
low=num and &HFF
FormatHex4=FormatHex2(high)&FormatHex2(low)
End Function
'引用自http://bbs.ecshop.com/viewthread.php?tid=17563
导入成功..
但是发现中文全部乱码了.....
请问如果解决.
据了解sqlserver的默认编码应该是iso-8859-1的.
mysql的默认编码应该是latin1
两个编码应该是一样的吧....
-----------------------------------------------------------------------------
ecshop默认是utf-8的解析方式....
为了避免大家犯我同样的错误...我把asp下的编码转换函数帖出来...
Function FilterUnicode2UTF_8(ByRef strUnicode)
dim i,strMid,strStream,ascWord
'strUnicode=Replace(strUnicode,vbCrLf,"")
for i=1 to len(strUnicode)
strMid=Mid(strUnicode,i,1)
ascWord=Asc(strMid)
if (ascWord<0 or ascWord>127) then
strStream=strStream+""+FormatHex4(ascW(strMid))+";"
else
strStream=strStream+strMid
end if
next
FilterUnicode2UTF_8=strStream
End Function
Function FormatHex2(num)
num=num and &HFF
if num<16 then
FormatHex2="0"+Hex(num)
else
FormatHex2=Hex(num)
end if
End Function
Function FormatHex4(num)
dim high,low
high=(num and &HFF00)\&H100
low=num and &HFF
FormatHex4=FormatHex2(high)&FormatHex2(low)
End Function
'引用自http://bbs.ecshop.com/viewthread.php?tid=17563
评论: 0 | 引用: 0 | 查看次数: 1575
发表评论
你没有权限发表留言!