20个“数字”字符串转换为数字后再还原为字符?
x:='91233454565546546566';
strtofloat后,再次显示用floattostr,结果为科学计数法的字符串
   我需要还原为:'91233454565546546566'怎么办?

解决方案 »

  1.   

    既然是20个数字,何不用strtoint,然后在inttostr呢?
    ^_^
    如果有小数点的话就自己写转换程序了,主要是记住小数点的位置就行了。
      

  2.   

    IFindit(寻找其中的乐趣) 的方法可以
      

  3.   

    FloatToStr前先Int返回整数部分
      

  4.   

    呵呵,INT64范围还是不够:)
      

  5.   

    var x,x1,x2:string;
    begin
     x:='91233454565546546566';
     x1:=floattostr(strtofloat(x)/math.Power(10,17)-trunc(strtofloat(x)/math.Power(10,17)));
     x1:=copy(x1,3,length(x1)-2);
     x2:=inttostr(trunc(strtofloat(x)/math.Power(10,17)));
     showmessage(x2+x1);
      

  6.   

    转为数字
    format('%f',[x]);
    转为字符
    format('%s',[x]);
      

  7.   

    //将字符串转换为数值(这是我以前在C语言下写的一个函数,你看看吧)Float  strToFloat(uChar*  pStr)
    {
    uChar*    pFirstHeader, *pSecondHeader;

    uChar   number, i, tmpNum, tmpStr[20];
    sInt4   lenth;

    Float   intValue = 0;
    Float   floatValue = 0.0; lenth = Xstrlen(pStr);
    //为确保字符串的第一个字节不是空格也不是空字符串
    while ( ( (*pStr == 32) || (*pStr == 48) ) && (lenth--) )
    pStr ++;

    if (*pStr == 0)
    return 0.0;

    pFirstHeader = pStr;

    while (*pStr != '.' && *pStr >= 48 && *pStr <=57 && *pStr != 0)
    {
    pStr++;
    }

    pSecondHeader = pStr;

    //计算出整数部分的字符个数

    number = pSecondHeader - pFirstHeader;

    for (i = 0; i<number; i++)
    {
    tmpNum = *pFirstHeader++ -48;
    intValue = intValue + tmpNum * XjinglePow(10, number - i - 1);//
    }
    i = 0; 

    if (*pSecondHeader == 46)
    {
    pSecondHeader++;
    while (*pSecondHeader != 0 && *pSecondHeader != 32 && *pSecondHeader >= 48 && *pSecondHeader <=57)
    {

    tmpNum = *pSecondHeader -48;
    floatValue = floatValue + tmpNum * Power(10, -i-1);//

    pSecondHeader++;
    i++;
    }
    }

    floatValue = (tReal8)intValue + floatValue;

    return floatValue;

    }
      

  8.   

    不好意思,  我这不是纯C语言,  是PDA上的程序,  其中tReal8就是float, XjinglePow 就是C语言中的power, X的y次方,  sInt4 不是int Xstrcpy 就是c中的Strcpy,把X去掉,你试一下吧,太忙了, 你自己 整理一下吧!
      

  9.   

    我的PDA上一直用我写的这个函数, 目前还没出过问题!