Java 数字日期到单词日期

Java 数字日期到单词日期,java,netbeans,Java,Netbeans,需要帮助,如何在java中转换?2012年9月9日=2012年9月9日? 我们的老师把它作为一项作业。。月、日、年,单独输入使用 提前通知 package exam4; import java.text.ParseException 导入java.text.simpleDataFormat 导入java.util.Date 导入javax.swing.JOptionPane public class Exam4{ public static void main(String[] args) {

需要帮助,如何在java中转换?2012年9月9日=2012年9月9日? 我们的老师把它作为一项作业。。月、日、年,单独输入使用

提前通知

package exam4;
import java.text.ParseException
导入java.text.simpleDataFormat
导入java.util.Date
导入javax.swing.JOptionPane

public class Exam4{

public static void main(String[] args) {


        String inMonth=JOptionPane.showInputDialog(null, "Enter Month");
            int intMonth = Integer.parseInt(inMonth);

        String inDay=JOptionPane.showInputDialog(null, "Enter Day");
            int intDay = Integer.parseInt(inDay);

        String inYear=JOptionPane.showInputDialog(null, "Enter Year");
            int intYear = Integer.parseInt(inYear);

        getDate(intMonth, intDay, intYear);


}

static void getDate(int intMonth, int intDay, int intYear){

    if((intMonth==2)&&(intDay<=29)&&(intYear<=9999)){
        JOptionPane.showMessageDialog(null, "February 29, 2012");
        genDate(intMonth,intDay,intYear);
    }         

        else if (((intMonth<12)&&(intDay<31)&&(intYear<9999))&&((intMonth==2)&&(intDay<=29)&&(intYear<=9999))){
            JOptionPane.showMessageDialog(null, "Regular date");

        }

        else{
            JOptionPane.showMessageDialog(null, "atik na date");
        }
}

static void genDate(int intMonth, int intDay, int intYear){

        String fMonth = Integer.toString(intMonth);
        String fDay = Integer.toString(intDay);
        String fYear = Integer.toString(intYear);

        String DateTime=fMonth+fDay+fYear;

    SimpleDateFormat dateFormat = new SimpleDateFormat("MMddyyyy");
    Date myDate = null;

        try {
            myDate = dateFormat.parse(DateTime);
        } catch (ParseException e) {
          }

    SimpleDateFormat timeFormat = new SimpleDateFormat("MMMMM dd, yyyy");
    String finalDate = timeFormat.format(myDate);

    JOptionPane.showMessageDialog(null,finalDate);

} 
publicstaticvoidmain(字符串[]args){
String inMonth=JOptionPane.showInputDialog(null,“输入月份”);
int intMonth=Integer.parseInt(inMonth);
String inDay=JOptionPane.showInputDialog(null,“输入日期”);
int intDay=Integer.parseInt(inDay);
字符串inYear=JOptionPane.showInputDialog(null,“输入年份”);
int intYear=Integer.parseInt(inYear);
getDate(intMonth、intDay、intYear);
}
静态void getDate(int intMonth、int intDay、int intYear){

如果((intMonth==2)和&(intDay使用
SimpleDateFormat
将字符串转换为日期,然后转换回字符串,如下所示:

     DateFormat format1 = new SimpleDateFormat("MM-dd-yyyy");
     Date date = format1.parse("09-09-2012");
     DateFormat format2 = new SimpleDateFormat("MMMMM dd, yyyy");
     String dateString = format2.format(date);
     System.out.println(dateString); //<- prints September 09, 2012
DateFormat format1=新的SimpleDataFormat(“MM dd yyyy”);
日期日期=格式1.解析(“09-09-2012”);
DateFormat format2=新的SimpleDateFormat(“MMMMM dd,yyyy”);
String dateString=format2.format(日期);

System.out.println(日期字符串);//我试过了,但它给了我奇怪的日期……试着进入2012年2月29日。它给出了12月31日,0013@renhangad您需要输入
02-29-2012
。这样,它会打印出
2012年2月29日
。我已经在答案中做了一些更正。希望您指的是更新的格式。它是工作代码。@renhangad对您有用吗?如果您希望输入
02 29 2012
作为日期,然后在第一条语句中使用
MM dd yyyy
作为日期格式字符串。请确保输入是以声明的格式提供的。是的,它的工作代码。我想问题出在我输入“02”时解析int>字符串当我将其解析为int的字符串变为2时,再次解析为int的字符串变为“2”。yogen爵士知道如何解析int 2=String“02”吗?@renhangad即使你输入
2 29 2012
(没有0),它也应该工作(对我来说工作)。请确保您使用相同的格式,即使用相同的日期字符串作为格式。我的意思是,如果您使用空格作为分隔符,则使用空格定义格式。如果您使用
-
作为分隔符,则使用
-
定义格式。请尝试使用此代码michael先生..尝试输入02 29 2012请不要在提问时使用txt语音。Pr这里首选带有标点符号的操作英语。请阅读和。对不起,吉姆爵士,谢谢提醒=)