TC官方合作论坛

 找回密码
 立即注册
查看: 1066|回复: 3

[BUG反馈] 浮点转字符问题

[复制链接]
发表于 2015-9-26 12:50:58 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
整数或浮点数转字符有些问题:比如5转符为 5.000000,5.12转字符为5.120000
目前解决办法是增加一个自定义函数如下:
功能 mystr(dS)
    如果 (是否浮点型(dS))
        dS=字符串修剪(dS)
        循环(字符串截取右侧(dS,1)=="0"||字符串截取右侧(dS,1)==".")
            dS=字符串截取左侧(dS,字符串长度(dS)-1)
        结束
    结束
    返回 dS
结束
回复

使用道具 举报

发表于 2015-9-26 16:22:39 | 显示全部楼层
//调试输出(补零(5454,10,"后"))
//调试输出(补零(5454,10,"前"))
功能 补零(参_原数,参_位数,前后="前")
    变量 补零格式,返_数
    遍历(变量 i = 0; i < 参_位数; i++)
        补零格式 =  字符串追加(补零格式,0)   
    结束
    如果(前后=="前")
        返_数 = 字符串截取右侧(字符串追加(补零格式,参_原数),参_位数)
    否则如果(前后=="后")
        返_数 = 字符串截取左侧(字符串追加(参_原数,补零格式),参_位数)
    结束
    返回 返_数
结束
功能 字符串追加(参_原字符串,参_追加字符串)
    返回 字符串格式化("%s%s",参_原字符串,参_追加字符串)
结束
回复 支持 反对

使用道具 举报

发表于 2015-9-26 19:12:51 | 显示全部楼层
34566tyz
回复

使用道具 举报

 楼主| 发表于 2015-9-28 18:42:05 | 显示全部楼层
优化一下更准确
function mystr(dS)
    if (isdouble(dS))
        dS=strtrim(dS)
        while(strright(dS,1)=="0")
            dS=strleft(dS,strlen(dS)-1)            
        end
        if (strright(dS,1)==".")
            dS=strleft(dS,strlen(dS)-1)
        end
    end
    return dS
end
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-5-27 04:21 , Processed in 0.032003 second(s), 22 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表