我有一个包含单词列表的txt。每个有14个字母的单词,以“M”开头,在第8个位置有“n”。应该很简单,但实际上有一些问题。这是我的代码:
public static void main(String[] args) throws IOException {
BufferedReader buff = new BufferedReader(new FileReader("C:/users/admin/Documents/Auslese.txt"));
BufferedWriter buff2 = new BufferedWriter(new FileWriter("C:/users/admin/Documents/Eingegrenzt.txt"));
String text = buff.readLine();
char buchstabe, buchstabe2;
while(text != null){
if(text.length() == 14){
buchstabe = text.charAt(0);
buchstabe2 = text.charAt(7);
if((buchstabe == 'M' || buchstabe == 'm') && buchstabe2 == 'n'){
buff2.write(text);
buff2.newLine();
}}
text = buff.readLine();
}
}
实际上有几个单词符合这些条件,但在执行代码后,第二个文件中不会写入任何单词。
例如,即使有14个字母的单词,行text.length() == 14
也不起作用。如果我选择text.length() > 13
,那么它就有效。
或字母'n'的条件。如果没有它(和length > 13
)它可以正常工作,但是在添加这一行之后,文件中再没有单词(即使例如以“Marathon”开头的每个单词都应该没问题。)
我希望,有人可以帮助我:/。