2014-02-18 61 views
0
index = temp.indexOf(" \""); 

這行代碼應該放指數的位置「而是指數= -1爲什麼這行代碼不起作用?

temp = /path/to/image.jpg 「Title text」) 

這裏是整個方法 指數= line.indexOf(」 [「!);

  if (index > -1) 
      { 
       working = line.substring(0,index); 
       String temp = line.substring(index+2,line.length()); 
       index = temp.indexOf("]("); 
       String altText = temp.substring(0, index); 

       System.out.println(temp); 

       temp = temp.substring(index+2, temp.length()); 

       System.out.println(temp); 

       index = temp.indexOf(" \""); 

       System.out.println(index); 

       String imgPath = temp.substring(0, index); 
       temp = temp.substring(index+2, line.length()); 
       index = temp.indexOf("\")"); 
       String titleText = temp.substring(0,index); 
       temp = temp.substring(index+2, line.length()); 
       working = working + translateImage(altText, imgPath, titleText); 
       working = working + temp; 
       line = working; 
       working = ""; 
      } 

這是

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1 
    at java.lang.String.substring(Unknown Source) 
alternate text](/path/to/image.jpg 「Title text」) 
/path/to/image.jpg 「Title text」) 
-1 
    at MarkdownTranslator.main(MarkdownTranslator.java:105) 

我用的是STRI錯誤ngs之後,分別檢查以下變量的值。 臨時 溫度 指數

+1

您可以發佈一個例子程序,顯示了使用硬編碼字符串這種行爲? –

+1

首先,它會將索引放在雙引號前的空格位置。您發佈的示例字符串使用智能(或曲線)引號。不經常報價。只要看看你的問題中的第一個代碼段和第二個代碼段中的內容。他們不是同一個角色。 –

回答

相關問題