现在的位置: 网页制作教程网站制作经验 >正文
asp学习教程

ASC中文参数返回值是1的解决办法

发表于2017/1/10 网站制作经验 0条评论 ⁄ 热度 2,014℃

在使用asc函数时如果参数为中文字符的时候,常常会遇到返回值为1的情况,出现这种问题大多是因为程序代码是采用UTF-8编码方式编写。

今天就和大家讨论下ASC中文参数返回值是1的解决办法。比如下面编写的函数:

function str_len(str)
dim str_count,i
str_count=0
if str <>"" then
 for i=1 to len(str)
  if abs(asc(mid(str,i,1))) >127   then
   str_count=str_count+2
  else
   str_count=str_count+1
  end if
 next
end if
str_len=str_count
end function

如果你编写上面这个函数是在utf-8的编码方式编写的话,当参数为英文时,返回值正确,如果为中文就返回1。

解决办法:

如果你不更改程序源码的编码方式,还想使用此函数,那只有把asc函数改为ascw函数,这样的话就可以正常使用了。

  • 暂无评论