有如下函数:
private function longtoshort(inspec) as string
dim i
dim shortspec as string
dim mbuffer as string
dim mbuflen as string
mbuflen = 164
mbuffer = string(mbuflen,0)
i = getshortpathname(inspec,mbuffer,mbuflen)
longtoshort = left(mbuffer,i)
end function但i = getshortpathname(inspec,mbuffer,mbuflen) '得到的是8.3制短路径的长度,这里一个中文字符占2位。longtoshort = left(mbuffer,i)'按上面所得的路径长度取的最终短路径,这里的中文字符却和英文字母一样只占1位。
所以前后的不一致,从而导致含有中文的路径变成短路径时就会在后面多出相应数量的空字符。
比如:"C:\Documents and Settings\Administrator\桌面"就成了"C:\DOCUME~1\ADMINI~1\桌面__" “_”为一个空字符。请问此问题怎么解决?
private function longtoshort(inspec) as string
dim i
dim shortspec as string
dim mbuffer as string
dim mbuflen as string
mbuflen = 164
mbuffer = string(mbuflen,0)
i = getshortpathname(inspec,mbuffer,mbuflen)
longtoshort = left(mbuffer,i)
end function但i = getshortpathname(inspec,mbuffer,mbuflen) '得到的是8.3制短路径的长度,这里一个中文字符占2位。longtoshort = left(mbuffer,i)'按上面所得的路径长度取的最终短路径,这里的中文字符却和英文字母一样只占1位。
所以前后的不一致,从而导致含有中文的路径变成短路径时就会在后面多出相应数量的空字符。
比如:"C:\Documents and Settings\Administrator\桌面"就成了"C:\DOCUME~1\ADMINI~1\桌面__" “_”为一个空字符。请问此问题怎么解决?
解决方案 »
- 求高手帮帮我 vb编程问题
- VB支持多态,那它是解释型还是编译型的语言?
- 如何增加菜单项啊.晕啊!!!!
- VB高手(表达式)语法检查
- 请问如何将excel表导入SQLSEVER数据库,谢谢
- 高手们,问大家一个问题啊,VB6.0中怎样用SQL语句更改表的字段名啊?
- 结贴的问题
- 谁知道在那找到更多的VB控件?????
- 主 题:我想拜TechnoFantasy为师!!(300分,进来给),这封贴给不了分,进这儿给.(还有我拜师的原因)
- 谁能给我解释下 为什么最后的结束 C 会=2 D会等于4 明明说函数体不会改变主程序的值的
- 带磁卡槽的键盘,磁卡要多少钱?
- 欢迎你一起加入编程小组!QQ群号:437784
Result = Replace(Original, Chr(0), "")