为什么这行代码不起作用?

时间:2014-02-18 18:05:32

标签: java compiler-errors

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

这行代码应该将索引放在“但是index = -1

的位置
temp = /path/to/image.jpg “Title text”)

这是整个方法 index = 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)

我在异常之后使用字符串分别检查以下变量的值。 温度 温度 索引

1 个答案:

答案 0 :(得分:2)

如果第二行代码是字符串的Copy& Pasted版本,那么它看起来像字符串实际上包含“智能引号”。这些不等同于'"'字符。

请参阅以下内容: