어떻게:선도 0 으로 숫자 를 채 웁 니까?


"D"표준 디지털 형식 문자열 과 정밀도 설명 자 를 결합 하여 선도 0 으로 정 수 를 채 울 수 있 습 니 다.사용자 정의 디지털 형식 문자열 을 사용 하면 정수 와 부동 소수점 을 선도 0 으로 채 울 수 있 습 니 다.이 주 제 는 이 두 가지 방법 을 어떻게 사용 하여 선도 0 을 숫자 로 채 우 는 지 설명 한다.
선도 0 으로 정 수 를 특정 길이 로 채 웁 니 다.
전체 수치 가 표시 할 자릿수 를 확인 합 니 다.이 숫자 에 있 는 모든 선도 자 리 를 포함 합 니 다
4.567917.정 수 를 10 진법 으로 표시 할 지 16 진법 으로 표시 할 지 확인 합 니 다.
  • 정 수 를 10 진수 로 표시 하려 면 ToString(String)방법 을 사용 하고 문자열'Dn'을 format 매개 변수 값 으로 전달 합 니 다.그 중에서 n 은 문자열 의 최소 길 이 를 표시 합 니 다
  • 정 수 를 16 진수 로 표시 하려 면 ToString(String)방법 을 사용 하고 문자열'Xn'을 format 매개 변수 값 으로 전달 합 니 다.그 중에서 n 은 문자열 의 최소 길 이 를 표시 합 니 다

  • 복합 형식 을 사용 하 는 방법(예 를 들 어 Format 이나 Write Line)에서 도 형식 문자열 을 사용 할 수 있 습 니 다
    다음 예제 에 서 는 숫자 를 포맷 하 는 총 길이 가 최소 8 글자 가 되도록 선도 0 으로 몇 개의 정수 형식 을 설정 합 니 다.
    VB
    C#
    C++
    F#
    JScript
    복제 하 다.
    byte byteValue = 254;
    short shortValue = 10342;
    int intValue = 1023983;
    long lngValue = 6985321;               
    ulong ulngValue = UInt64.MaxValue;
    
    // Display integer values by caling the ToString method.
    Console.WriteLine("{0,22} {1,22}", byteValue.ToString("D8"), byteValue.ToString("X8"));
    Console.WriteLine("{0,22} {1,22}", shortValue.ToString("D8"), shortValue.ToString("X8"));
    Console.WriteLine("{0,22} {1,22}", intValue.ToString("D8"), intValue.ToString("X8"));
    Console.WriteLine("{0,22} {1,22}", lngValue.ToString("D8"), lngValue.ToString("X8"));
    Console.WriteLine("{0,22} {1,22}", ulngValue.ToString("D8"), ulngValue.ToString("X8"));
    Console.WriteLine();
    
    // Display the same integer values by using composite formatting.
    Console.WriteLine("{0,22:D8} {0,22:X8}", byteValue);
    Console.WriteLine("{0,22:D8} {0,22:X8}", shortValue);
    Console.WriteLine("{0,22:D8} {0,22:X8}", intValue);
    Console.WriteLine("{0,22:D8} {0,22:X8}", lngValue);
    Console.WriteLine("{0,22:D8} {0,22:X8}", ulngValue);
    // The example displays the following output:
    //                     00000254               000000FE
    //                     00010342               00002866
    //                     01023983               000F9FEF
    //                     06985321               006A9669
    //         18446744073709551615       FFFFFFFFFFFFFFFF
    //       
    //                     00000254               000000FE
    //                     00010342               00002866
    //                     01023983               000F9FEF
    //                     06985321               006A9669
    //         18446744073709551615       FFFFFFFFFFFFFFFF
    //         18446744073709551615       FFFFFFFFFFFFFFFF
    
    
    

    특정 수의 선도 0 으로 정 수 를 채우다.
    4.567917.전체 수치 가 표시 할 선도 0 의 수 를 확인 합 니 다
    4.567917.정 수 를 10 진법 으로 표시 할 지 16 진법 으로 표시 할 지 확인 합 니 다.정 수 를 10 진수 로 포맷 하려 면"D"표준 형식 설명 자 를 사용 해 야 합 니 다.정 수 를 16 진수 로 포맷 하려 면"X"표준 형식 설명 자 를 사용 해 야 합 니 다
  • 정수 값 의 ToString("D").Length 또는 ToString("X").Length 방법 을 호출 하여 채 워 지지 않 은 수치 문자열 의 길 이 를 확인 합 니 다

  • 4.567917.포맷 문자열 에 포 함 될 선도 0 수 와 채 워 지지 않 은 수치 문자열 의 길 이 를 추가 합 니 다.이것 은 채 워 진 문자열 의 총 길 이 를 정의 합 니 다
  • 정수 값 의 ToString(String)방법 을 호출 하고 10 진 문자열 에 적용 되 는'Dn'과 16 진 문자열 에 적용 되 는'Xn'을 전달 합 니 다.그 중에서 n 은 채 워 진 문자열 의 총 길 이 를 표시 합 니 다.복합 형식 을 지원 하 는 방법 에서 도"Dn"이나"Xn"형식 문자열 을 사용 할 수 있 습 니 다

  • 아래 의 예 는 다섯 개의 선도 0 을 사용 하여 전체 수 치 를 채 웁 니 다.
    VB
    C#
    C++
    F#
    JScript
    복제 하 다.
    int value = 160934;
    int decimalLength = value.ToString("D").Length + 5;
    int hexLength = value.ToString("X").Length + 5;
    Console.WriteLine(value.ToString("D" + decimalLength.ToString()));
    Console.WriteLine(value.ToString("X" + hexLength.ToString()));
    // The example displays the following output:
    //       00000160934
    //       00000274A6      
    
    
    

    선도 0 으로 수 치 를 특정 길이 로 채 웁 니 다.
  • 숫자 를 확인 하 는 문자열 은 소수점 왼쪽 에 있 는 자릿수 를 표시 합 니 다.이 총 자릿수 에는 어떠한 전도 0 도 포함 되 어 있다

  • 4.567917.사용자 정의 디지털 형식 문자열 을 정의 합 니 다.0 자리 표시 자("0")를 사용 하여 0 의 최소 수 를 표시 합 니 다
  • 숫자의 ToString(String)방법 을 호출 하고 사용자 정의 형식 문자열 을 전달 합 니 다.사용자 정의 형식 문자열 을 복합 형식 을 지원 하 는 방법 과 함께 사용 할 수도 있 습 니 다

  • 다음 예제 에 서 는 소수점 왼쪽 의 총 길 이 를 최소 8 자리 까지 포맷 할 수 있 도록 선도 0 으로 몇 개의 수치 형식 을 설정 합 니 다.
    VB
    C#
    C++
    F#
    JScript
    복제 하 다.
    string fmt = "00000000.##";
    int intValue = 1053240;
    decimal decValue = 103932.52m;
    float sngValue = 1549230.10873992f;
    double dblValue = 9034521202.93217412;
    
    // Display the numbers using the ToString method.
    Console.WriteLine(intValue.ToString(fmt));
    Console.WriteLine(decValue.ToString(fmt));           
    Console.WriteLine(sngValue.ToString(fmt));
    Console.WriteLine(sngValue.ToString(fmt));           
    Console.WriteLine();
    
    // Display the numbers using composite formatting.
    string formatString = " {0,15:" + fmt + "}";
    Console.WriteLine(formatString, intValue);      
    Console.WriteLine(formatString, decValue);      
    Console.WriteLine(formatString, sngValue);      
    Console.WriteLine(formatString, dblValue);      
    // The example displays the following output:
    //       01053240
    //       00103932.52
    //       01549230
    //       01549230
    //       
    //               01053240
    //            00103932.52
    //               01549230
    //          9034521202.93      
    
    
    

    특정 수의 전도 0 으로 수 치 를 채 웁 니 다.
    4.567917.수치 가 포함 할 선도 0 의 수 를 확정 합 니 다
    4.567917.채 워 지지 않 은 수치 문자열 의 소수점 왼쪽 자릿수 를 확인 합 니 다.구체 적 인 방법 은:
  • 숫자의 문자열 표시 형식 이 소수점 기 호 를 포함 하 는 지 확인 합 니 다

  • 4.567917.소수점 기 호 를 포함 하면 소수점 왼쪽 의 문자 수 를 확인한다.-또는-소수점 기호 가 포함 되 지 않 으 면 문자열 의 길 이 를 확인 합 니 다

    4.567917.사용자 정의 형식 문자열 을 만 듭 니 다.0 자리 표시 자("0")를 사용 하여 문자열 에 나타 나 는 모든 선도 0 을 표시 하고 0 자리 표시 자 나 자리 표시 자("\#")를 사용 하여 기본 문자열 의 모든 자 리 를 표시 합 니 다
  • 사용자 정의 형식 문자열 을 매개 변수 로 숫자 에 제공 하 는 ToString(String)방법 이나 복합 형식 을 지원 하 는 방법

  • 아래 의 예 는 다섯 개의 선도 0 을 사용 하여 두 개의 Double 값 을 채 웁 니 다.
    VB
    C#
    C++
    F#
    JScript
    복제 하 다.
    double[] dblValues = { 9034521202.93217412, 9034521202 };
    foreach (double dblValue in dblValues)
    {
       string decSeparator = System.Globalization.NumberFormatInfo.CurrentInfo.NumberDecimalSeparator;
       string fmt, formatString;
    
       if (dblValue.ToString().Contains(decSeparator))
       {
          int digits = dblValue.ToString().IndexOf(decSeparator);
          fmt = new String('0', 5) + new String('#', digits) + ".##";
       }
       else
       {
          fmt = new String('0', dblValue.ToString().Length);   
       }
       formatString = "{0,20:" + fmt + "}";
    
       Console.WriteLine(dblValue.ToString(fmt));
       Console.WriteLine(formatString, dblValue);
    }
    // The example displays the following output:
    //       000009034521202.93
    //         000009034521202.93
    //       9034521202
    //                 9034521202            
    
    
    

    참고 하 시 오
    콘 셉 트
    사용자 정의 디지털 형식 문자열
    표준 디지털 형식 문자열
    복합 형식

    좋은 웹페이지 즐겨찾기