2014-06-30 74 views
0

我想從數據的大串,我有一子,但是當我使用這條線:子串索引越界,即使指數<string.length減

string output = datastring.substring(0, datastring.Length-1) 

它告訴我索引超出範圍(「索引和長度必須指向字符串中的位置」)。

這工作就好了,這樣outputstring打印出的同樣的事情datastring

while (index < datastring.Length) 
     { 
      outputstring += datastring[index]; 
      index++; 
     } 

然而,這給了我一個錯誤:

if (index + 10 < datastring.Length) 
{ 
     if (datastring.substring(index, index+10) == "name") 
     { 
      outputstring += " found instance of 'name'"; 

     }  

} 

它說,該指數超出的界限。當我已經檢查了指數+10在範圍內時,如何在第二個「if」語句中超出指數範圍?

回答

0

這是.substring(offset, length),而不是.substring(startOffset, endOffset)

而不是

datastring.substring(index, index+10) 

使用

datastring.substring(index, 10)