문제

이 코드에서는 나는 디버깅,이 코드 snipit:

ddlExpYear.SelectedItem.Value.Substring(2).PadLeft(2, '0');

이것은 무엇을?나는 정말로 실행할 수 없습니다 이것은 너무 많은 그것의 일부입니다 라이브 신용 카드 응용 프로그램입니다.의 추가 다운 목록으로 당신이 상상할 수있는 이름에서 포함되는 4-자리 연도.

업데이트:주셔서 감사합니다 모두.저에게는 많이 있습니다.NET 개발도록 설정하는 빠른 테스트하지 않으로 빠른습니다.

도움이 되었습니까?

해결책

그것은 마지막 두 자릿수의 패드의 왼쪽으로 제로 최대 2 자입니다.처럼 보이는"다만"만료 년에서 끝나 08,07,etc., 는 것을 확인하고 주요 제가 존재합니다.

다른 팁

이 인쇄"98"습니다.

class Program
{
    static void Main(string[] args)
    {
        Console.Write("1998".Substring(2).PadLeft(2, '0'));
        Console.Read();
    }
}

의 과정을 실행할 수 있습니다.당신은 단지 그것을 실행할 수 없습에서는 애플리케이션으로 디버깅할 수 있습니다.무엇을 찾아 그것을 하며,단지 그것이 무엇처럼 보이는 그것의 일을,새로운 웹 응용 프로그램에 넣어 추가 다운 목록,몇 가지 정 년에 그것은,그리고 다음에 넣고 코드를 언급했고 그것이 무엇을 볼 수 있습니다.다음을 알 수 있습니다.

습니까?그것은 점점의 값을 선택 항목 및 모든 후 처음 두 문자입니다.는 경우 단지 하나의 문자,그가'0'으로 시작 부분의 경우,제로 문자를 반환하는'00'.그 이유는 내가 이것을 말하는 것은 바보 같기 때문입해야 하는 경우 값을 두 가지,왜 그냥 다음과 같이 설정합니는 것을 시작으로 만드는 경우는 드롭 다운 목록?

마치 그것을 잡는 부분에 3 문자(만 0 기반),끝까지는 경우 다음 하위 문자열의 길이보다 2 그것은 만들기 같은 길이 2 개를 추가하여 0 왼쪽에.

PadLeft 보장 받은 적어도 두 개의 문자 입력에서,패딩의 입력(왼쪽에서)해당 문자입니다.그래서 입력,이 경우에 있 12.당신이 얻을 수"12"다.또는 입력이 될 수 있습 9,어떤 경우에,당신은"09"다.

이것은 예를 들어 복합 체인(참조하십시오 "거기에서 어떤 혜택을 연결" 게시물)비스듬히고 코드가 나타나게 복잡합니다.

하위 문자열 값을 반환합니다 첫 번째와 두 개의 문자를 건너뛰 padleft 패드를 가진 결과를 선도하는 제:

 string s = "2014";
    MessageBox.Show(s.Substring(2).PadLeft(2, 'x')); //14
    string s2 = "14";
    MessageBox.Show(s2.Substring(2).PadLeft(2, 'x')); //xx

나의 추측은 코드를 변환하려고 해서 2 자리 값입니다.

이 PadLeft 만 무언가를 경우에는 사용자가 올해는 2 개 또는 3 개의 자리의 숫자입니다.

1-자리 연도,당신은 예외가(Subsring 항).

2-자리 연도(07,08,etc.),it will return00.내가 말할 것이 오류가 있습니다.

3-자리 연도(207,208),저자가 있을 수 있습으로 간주됩 오타,그것을 반환 마지막 자리 패딩과 함께 제--207->07;208->08.

는 한 사용자 선택해야 하는 올해 허용되지 않을 입력해 PadLeft 은 불필요한--Substring(2)는 정확하게 당신이 필요로 주어진 4-자리 연도.

이 코드는 것을 잡으려고 노력서 2 자리에서 올해 네 개의 자리 연도(ddlexpyear 힌트입니다)

그것은 문자열과 문자열을 반환합니다 그래서 피하는 문자열 구분 기호:

  • 1998 -> 98
  • 2000 -> 00
  • 2001 -> 01
  • 2012 -> 12

문제입니다 작업을 수행하지 않는 것이 좋은 직업입니다.이러한 경우,패딩이지 않는 실제로 도움이됩니다.을 제거하 pad 코드에 영향을 미치지 않는 경우는 그것을 얻는 정확합니다.

그래서 코드 작동(과 함께 또는없이 패드)4digit 년 동안,그것은 무엇을 위해 문자열의 길이는?

  • null:예외
  • 0:예외
  • 1:예외
  • 2:항상 반품"00".예:올해 49(을 때 유대인들 expulsed 에서 로마)가"00".이것은 나쁜 것입니다.
  • 3:저장 마지막 자리하고,"0"이것의 앞에 있습니다.정에서 10%의 경우(을 때 두 번째 숫자가 실제로는 제로,같은 304,또는 908),하지만 아주 잘못된 나머지 부분에서(다음과 같 915,423,110)
  • 5:그냥 절약 3,4 자리 숫자로,또한 잘못된,"10549"아니야"49"그러나 대신에"54".
  • 으로 기대할 수 있습니다 문제가 계속에서 더 높은 자리입니다.

OK 그래서 그것이 복용하는 값에서 드롭다운,ABCD

그것은 부분에서 2 위치,CD

다음 err,패드의 왼쪽 그것은 2 개의 과 그것은 필요가있는 경우에,너무 CD

는 경우 또는,당신은 끝났 X,그것은 것이 문자열을 X 과 패드를 OX

그것은 마지막 두 자릿수의 년 후,패드의 왼쪽으로"0".

그래서 2010 것 10,2009 것 09.

이는 개발자지 않은 값을 설정 드롭다운 목록에서 마지막 두 자리 숫자,또는 왜 필요한 패드의 왼쪽 그것은(지 않는 한 당신이 다루는 세 0-9AD).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top