-3

我正在做一个小的java代码,其中数据通过文件读取并存储在a中String ,然后使用subSrig我必须打破这个字符串,
例如数据是这样保存的 "Hello java $" "Hello word $",每个句子都包含$在最后,我想打破它的基础 $

我确实尝试过使用indexOf等,lastindexOf但无法做到准确的逻辑,请帮助我

BufferedReader br= new BufferedReader(new FileReader("c:\\javaprograms\\a.txt));
    while((a=br.readLine())!=null)
    {
       s=s+a;
    // here i have to split  the data that is "Hello java$"  "Hello world$"          

    } 
4

3 回答 3

2

也许使用带有自定义分隔符的扫描仪会更好?例如像这样:

BufferedReader br = new BufferedReader(new FileReader("..."));
Scanner sc = new Scanner(br);
sc.useDelimiter("\\$");
while (sc.hasNext())
{
    String text = sc.next();
    System.out.println(text);
    ...
}

此代码使用“$”作为分隔符拆分您的文本

于 2012-12-08T20:37:04.580 回答
1

对我来说很好:

String a = "Hello java $ fff";
System.out.println(a.indexOf("$"));
System.out.println(a.substring(0, a.indexOf("$")));

输出:

11
Hello java 
于 2012-12-08T20:27:53.197 回答
0

您想查看String类中的 split() 函数,这将允许您返回围绕特定字符串或正则表达式拆分的字符串数组。

于 2012-12-08T20:25:34.640 回答