アプリ版:「スタンプのみでお礼する」機能のリリースについて

import java.util.*;
import java.io.*;
import java.text.*;
public class JTest9 {
public static void main(String[] args) throws IOException {
System.out.println("基準となる年月日を入力して下さい。");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str1 = br.readLine();
String str2 = br.readLine();
String str3 = br.readLine();
int year = Integer.parseInt(str1);
int month = Integer.parseInt(str2);
int day = Integer.parseInt(str3);
String targetDateText = year + "/" + month + "/" + day;
int addDate = 10;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Date targetDate = sdf.parse(targetDateText);
Calendar cal = Calendar.getInstance();
cal.setTime(targetDate);
cal.add(Calendar.DATE,addDate);
System.out.println(sdf.format(cal.getTime()));
}
}


上記は、コンソールから、年、月、日 を入力し、その入力した日付から10日後の日付を
出力しようとしているプログラムです。
しかし、17行目のsdf.parse(targetDateText);において、コンソール上に下記エラーが出ます。

Exception in thread "main" java.lang.Error: Unresolved compilation problem:
処理されない例外の型 ParseException

このエラーを解決したいのですが、どのように修正すればよいのでしょうか。

ご助言の程、よろしくお願い致します。

A 回答 (1件)

ParseExceptionの処理がされてません。



解決法はいくつかありますが、手っ取り早いのはメソッドのthrows IOExceptionに追記して、throws IOException, ParseExceptionというようにすることですね。これで例外をthrowするのでビルド時の問題は解消されます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!