テキストファイルを読み取り、日付のみを形式で出力する簡単なプログラムを作成しようとしていますyyyy.MM.dd
が、問題は、ファイルにいくつかのランダムな文字列があることです fe ppppp 2012-12-13 2012-13-06印刷する日付
public class Main {
public static void main(String... args) {
String fname = System.getProperty("user.home") + "/Test/dates.txt";
File f = new File(fname);
try {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
format.setLenient(false);
Scanner sc = new Scanner(f);
ArrayList<String> da = new ArrayList<String>();
while(sc.hasNext()) {
da.add(sc.next());
}
for (int i = 0;i<da.size()-1; i++) {
ParsePosition pp = new ParsePosition(0);
Date d = (Date) format.parse(da.get(i), pp);
if (d == null) {
System.err.println("Invalid date in " + da.get(i));
continue;}
System.out.println(d);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}