读书人

浮点数的存储解决方案

发布时间: 2012-02-13 17:20:26 作者: rapoo

浮点数的存储
对于浮点数转换成9位的字符串存储,如何保证精度不损失?谢谢各位。

[解决办法]
你用C 写一个dll 简单明了 用sprintf 就可以!!!
参数你到时给一个浮点的地址就可以了
[解决办法]
如果不是Extended类型可以将其放到Byte数组里
Byte数组和字符数组差不多。如果用字符数组可能会遇到无法转换的问题。
[解决办法]
funtion Convert(d : double):string;
begin
setlength(Result,sizeof(d));
move(d,Result[1],sizeof(d));
end;
[解决办法]
function ReverseConvert(s : string):double;
begin
move(s[1],Result,sizeof(double));
end;

这是反过来的代码
[解决办法]
如果是 Single 类型, 8个字节够了。
[解决办法]
如果不是Extended类型可以将其放到Byte数组里
Byte数组和字符数组差不多。如果用字符数组可能会遇到无法转换的问题。
====================================================================
同意,字符串一定要经过其他处理,否则可能会无法还原

读书人网 >.NET

热点推荐