0

我有一行包含各种非分隔字段值的数据。

X55655PlateX58745CupX52689SaucerX52459SpoonH59876KnifeX59866Fork

我正在尝试使用 substring 和 indexOf 来提取数据,使用一系列类似于下面的语句。

dataField1 = substring.inputLine((indexOf("Marker1: ")+9),(inputLine.indexOf("Marker2:")-1));

我一直error:cannot find symbol指向substring. 通常,这是我没有调用正确的 java 包的时候,但我正在使用以下内容:

import java.util.*;
import java.io.*;
import java.nio.file.*;
import java.lang.*;

java.lang.*字符串方法在哪里,对吗?我也在初始化String datafield1 = "";

dataField1 = inputLine.Substring((indexOf("Marker1: ")+9),(indexOf("Marker2:")-1));

导致 indexOf 收到cannot find symbnol错误。但是如果 indexOf 也是 String 的一个方法,那需要去哪里呢?

我的程序似乎使用substring(x,y)java 文档中所述的正确语法,但是,没有适用于我的故障排除的实际示例。

我已经阅读了这篇文章,但它并没有让我更好地理解这些概念。

为什么 dioes 这一直出错,我该如何防止它?

4

3 回答 3

7

substring应该在 String 对象上调用。否则,它正在寻找substring在您当前类中调用的方法。

于 2012-07-17T15:26:53.107 回答
4

substring()是 的一个方法String,应该是:

inputLine.substring(...

假设inputLine是一个String实例。

于 2012-07-17T15:27:06.177 回答
0

试试这个。

String dataField1 = inputLine.substring((inputLine.indexOf("Marker1: ")+9),
                                        (inputLine.indexOf("Marker2:")-1));
于 2012-07-17T15:28:21.590 回答