次の形式split()
で区切られた文字列をトークン化するために使用しています。*
name*lastName*ID*school*age
%
name*lastName*ID*school*age
%
name*lastName*ID*school*age
このコードを使用して、「entrada.al」という名前のファイルからこれを読んでいます。
static void leer() {
try {
String ruta="entrada.al";
File myFile = new File (ruta);
FileReader fileReader = new FileReader(myFile);
BufferedReader reader = new BufferedReader(fileReader);
String line = null;
while ((line=reader.readLine())!=null){
if (!(line.equals("%"))){
String [] separado = line.split("*"); //SPLIT CALL
names.add(separado[0]);
lastNames.add(separado[1]);
ids.add(separado[2]);
ages.add(separado[3]);
}
}
reader.close();
}
そして、私はこの例外を受けています:
スレッド「メイン」での例外 java.util.regex.PatternSyntaxException: メタ文字 '*' がインデックス 0 付近でぶら下がっています *
私の推測では*
、元のテキスト ファイルにアフター エイジがないことが原因であると思われます。どうすれば回避できますか?