Q&A

  • 1000단위 구분자가 있는 숫자를 Float로 변환은?
Numeric Data에 1000단위 구분자가 있습니다.

근데 이들을 연산하는데 사용하려고 하는데 이놈의 구분자 [,]때문에

Error가 나거든요.



[String] [Flaot]

10,000,000 ===> 10000000 으로 변환하는 함수가 있습니까? 델파이에서?

답변부탁드립니다.

2  COMMENTS
  • Profile
    최석기 1999.08.13 20:28
    김응철 께서 말씀하시기를...

    > Numeric Data에 1000단위 구분자가 있습니다.

    > 근데 이들을 연산하는데 사용하려고 하는데 이놈의 구분자 [,]때문에

    > Error가 나거든요.

    >

    > [String] [Flaot]

    > 10,000,000 ===> 10000000 으로 변환하는 함수가 있습니까? 델파이에서?

    > 답변부탁드립니다.



    델파이에서 함수는 존재하지 않구요. 하나 함수를 만들어 사용하면 될꺼 같은데요.



    문자열 찾아서 바꾸기

    아래의 함수는 주어진 문자열에서 특정 문자열을 찾아서 다른 문자열로

    해당 부분을 바꾸는 함수입니다

    만약 SearchAndReplace( 'this,is,a,test', ',', ' ' ) 처럼 한다면

    결과는 중간에 comma(',') 가 전부 공백으로 바뀌 문자열을 얻을 수 있습니다

    'this,is,a,test' -> 'this is a test'



    그러니까 SearchAndReplace('10,000,000',',','')이 처럼 하면 '10000000' 형태의 스트링을 리턴 받으니까 이 값을 Float로 가공하면 되자 않을까요?



    더 좋은 방법이 있을꺼 같은데 참고만 하세요..



    function SearchAndReplace(sSrc, sLookFor, sReplaceWith: string ): string;

    var

    nPos,

    nLenLookFor : integer;

    begin

    nPos := Pos(sLookFor, sSrc);

    nLenLookFor := Length(sLookFor);

    while(nPos > 0)do

    begin

    Delete( sSrc, nPos, nLenLookFor );

    Insert( sReplaceWith, sSrc, nPos );

    nPos := Pos( sLookFor, sSrc );

    end;

    Result := sSrc;

    end;

  • Profile
    김응철 1999.08.13 21:25
    .