回 帖 发 新 帖 刷新版面

主题:str函数的问题

str是把数字转化为字符串的函数,但是经常会出现这样一个问题:数字转化为字符串字后,字符串最前面有一个空格。
经过试验,只要不是负数,无论数字是什么数据类型,均会出现这个问题。
观察到这一现象的简单代码
private sub Form_Click()
dim s as string,aLongNum as long,aIntegerNum as integer
aLongNum=2
s="0" & str(aLongNum)
print s
aIntegerNum=2
s="0" & str(aIntegerNum)
print s
aLongNum=-2
s="0" & str(aLongNum)
print s
end sub

回复列表 (共2个回复)

沙发

用Cstr就没这个问题
以下解答来自CSDN

Str   函数   
  返回代表一数值的   Variant   (String)。      
  语法     
  Str(number)     
  必要的   number   参数为一   Long,其中可包含任何有效的数值表达式。    
  [color=red]说明    
  当一数字转成字符串时,总会在前头保留一空位来表示正负。如果   number   为正,返回的字符串包含一前导空格暗示有一正号。  [/color] 
  使用   Format   函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。与   Str   不同的是,Format   函数不包含前导空格来放置   number   的正负号。   
  注意       Str   函数只视句点   (.)   为有效的小数点。如果使用不同的小数点(例如,国际性的应用程序),可使用   CStr   将数字转成字符串。   

板凳

习惯上,大家使用trim函数套在外面去除前导空格、后导空格,或者全部。

我来回复

您尚未登录,请登录后再回复。点此登录或注册