2013-06-11 3 views
0

고정 길이 텍스트 파일을 작성하는 데 사용하는 다음 코드가 있습니다.인덱스가 범위를 벗어납니다. string.format에 보유 할 수있는 인덱스 항목 수는 얼마입니까?

System.IndexOutOfRangeException was unhandled 
    Message="Index was outside the bounds of the array." 
    Source="System.Data" 
    StackTrace: 
     at System.Data.Odbc.DbCache.AccessIndex(Int32 i) 
     at System.Data.Odbc.OdbcDataReader.internalGetString(Int32 i) 
     at System.Data.Odbc.OdbcDataReader.GetString(Int32 i) 
     at BuildFile_EXE.Program.Main(String[] args) in G:\IT Development\SSIS\Reports\NursysAPRN_ToNatCouncil\BuildFile_EXE\BuildFile_EXE\Program.cs:line 69 
     at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args) 
     at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() 
     at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 
     at System.Threading.ThreadHelper.ThreadStart() 

는 11 인덱스 제한이 String.format 나 또는 내가 뭔가를 분명 잃었합니까 : 나는 다음과 같은 오류가 다음 12 인덱스를 추가 할 때까지

   TestFile.WriteLine(string.Format(
        //Formats with negative numbers are left justified. e.g. {1,-10} 
        "{0,50}" + //SPACER 50 
        "{1,-10}" + //NCSBN ID 
        "{2,10}" + //SPACER 10 
        "{3,-50}" + //LAST NAME 
        "{4,-30}" + //FIRST NAME 
        "{5,-30}" + //MIDDLE NAME 
        "{6,90}" + //SPACER 90 
        "{7,-8}" + //DOB 
        "{8,-1}" + //GENDER 
        "{9,-9}" + //SOCIAL SECURITY NUMBER 
        "{10,41}" + //SPACER 41 
        "{11,-60}" + //ADDRESS 1 
        "{12,-60}", //ADDRESS 2 

        DbReader.GetString(0),DbReader.GetString(1),DbReader.GetString(2), 
        DbReader.GetString(3), DbReader.GetString(4),DbReader.GetString(5), 
        DbReader.GetString(6), DbReader.GetString(7), DbReader.GetString(8), 
        DbReader.GetString(9), DbReader.GetString(10), DbReader.GetString(11), 
        DbReader.GetString(12))); 

다 괜찮습니다?

감사합니다.

답변

1

예외 사항을 읽어보십시오. 귀하의 SqlDataReader 클래스가 액세스하는 데이터베이스의 테이블에는 열 11 개만 있습니다.

+0

고마워요. 나는 아직도 프로그래밍에 익숙하지 않고 때로는 내가받는 오류 메시지 중 일부를 이해하기 어렵다. – kdejarnet