如何确定String是否以特定字符开头?

时间:2013-05-22 09:30:25

标签: java

Java中是否有内置方法来确定String是否以特定字符开头?如何只在输出文件中写入不以定义字符开头的行?

   try {
        File input = new File("input");
        File output = new File("output");
        Scanner sc = new Scanner(input);
        PrintWriter printer = new PrintWriter(output);
        while (sc.hasNextLine()) {
            String s = sc.nextLine();
            printer.write(s);
        }
        printer.flush();
    }
    catch (FileNotFoundException e) {
        System.err.println("File not found. Please scan in new file.");
    }

2 个答案:

答案 0 :(得分:1)

检查角色是否在那里。

while (sc.hasNextLine()) {
    String s = sc.nextLine();
    if (s.startsWith("?"))
        printer.write(s);
}

或者

while (sc.hasNextLine()) {
    String s = sc.nextLine();
    char c = s.charAt(0);
    if (c.matches('?'))
        printer.write(s);
}

编辑:根据您的评论:

int i;
char c;
String s;
while (sc.hasNextLine()) {
    s = sc.nextLine();
    c = ' ';
    i = 0;
    while (c.matches(' ')) {
        c = s.charAt(i);
        if (c.matches('?'))
            printer.write(s);
        i++;
    }
}

不确定代码是否有效,我目前无法测试代码。但你可能会有这个想法。

答案 1 :(得分:0)

您可以在写入while循环之前轻松检查文本。

 if(check your string)
   printer.write(s);