Q&A

  • formatfloat에서 정렬문제
formatfloat('###,###,###0',[1156])인경우
결과가 '1,156'인데

'     1,156' 처럼
지정한 포맷의 길이 9자리로 우측정렬한 결과같이 하려면
포맷형식을 어떻게 지정해야 하는지요?

6  COMMENTS
  • Profile
    델티즌 2005.07.29 00:18
    결과값을 공백으로 정렬하는 방법없이
    format 함수의 포맷 인자로 바로 지정하는 방법은 없나요?


  • Profile
    최용일 2005.07.29 00:34
    안녕하세요. 최용일입니다.

    format만 사용해야된다면 아래와 같이 해보세요...
    <!--CodeS-->
    var
        Value: Currency;
    begin
        CurrencyString := ' '; // = Spcae Char.
        Value := 1156;
        ShowMessage( Format('%9m', [Value]) );
    end;
    <!--CodeE-->
    ^^ 항상 즐코하세요...

  • Profile
    델티즌 2005.07.29 05:35
    <!--CodeS-->
    var i :  Currency;
    begin
    i := 12345;
    showmessage( format('%10.0n', [i]) );<!--CodeE-->
    결과) '      12,345'

    해결했네요.. 답변 주셔서 감사합니다.

  • Profile
    최용일 2005.07.28 08:13
    안녕하세요. 최용일입니다.

    Format을 써보세요...

    Format('%9s', [FormatFloat('###,###,##0', 1156)]);

    ^^ 항상 즐코하세요...

  • Profile
    허저비 2005.07.28 06:37



      S := FormatFloat('#,##', 1234);

      for i := 0 to 9 - Length(S) do
        S := ' ' + S;

  • Profile
    전덕성 2005.07.28 05:51
    성의 없는 답변을 지우고 다시 올립니다......

    var
      ss : String;
    begin
      ss := '         ';  //원하는 자릿수 만큼, 여기서는 9개으ㅢ 스페이스
      label1.Caption := copy(ss + formatfloat('###,##0',1156), length(ss + formatfloat('###,##0',1156))-8,9);

    변수에 스페이스를 넣어서 위와같이 처리하면 되는 것 같습니다.....