将键盘录入的字符串转为日期(java)

如题,将键盘录入的字符串转为日期(java),我找到的csdn上的教程都是将现在时间转为日期

“Devil组”引证GPT后的撰写:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

public class StringToDateExample {
    public static void main(String[] args) throws ParseException {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入日期,格式为yyyy-MM-dd:");
        String inputDateStr = scanner.nextLine();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        Date date = formatter.parse(inputDateStr);
        System.out.println("转换后的日期为:" + date);
    }
}


用Scanner类获取从键盘输入的字符串,然后使用SimpleDateFormat类将字符串转换为日期。要转换的字符串格式必须与SimpleDateFormat的日期格式相匹配,否则将抛出ParseException异常。在此示例中,我们使用“yyyy-MM-dd”作为日期格式。最后,将转换后的日期打印到控制台上。

可以使用 SimpleDateFormat 进行日期格式化转换

String dateStr = "20230306123000";
// 转换
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
Date date = dateFormat.parse(dateStr);

String dateStr1 = "2023-03-06 12:30:00";
// 转换
SimpleDateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date1 = dateFormat1.parse(dateStr1);

可以使用Java中的SimpleDateFormat类将键盘录入的字符串转换为日期。以下是一个示例代码:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入日期(格式为yyyy-MM-dd):");
        String input = scanner.nextLine();

        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        Date date = null;
        try {
            date = dateFormat.parse(input);
        } catch (ParseException e) {
            e.printStackTrace();
        }

        System.out.println("输入的日期为:" + date);
    }
}


使用Scanner类获取键盘输入的字符串。然后,创建一个SimpleDateFormat对象,指定日期格式为"yyyy-MM-dd"。接下来,使用SimpleDateFormat的parse()方法将字符串转换为Date对象。最后,输出转换后的日期。
如果输入的字符串格式不符合指定的日期格式,SimpleDateFormat的parse()方法会抛出ParseException异常,需要进行异常处理。

你需要怎样的输入的,输出后的结果是咋样的,说清楚,可以写好给你,采纳即可

  • 参考GPT的内容和自己的思路:

  • 在Java中,可以使用SimpleDateFormat类来将字符串转换为日期。以下是一个简单的示例代码:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入日期(格式:yyyy-MM-dd):");
        String dateString = scanner.nextLine();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date date = format.parse(dateString);
            System.out.println("转换后的日期为:" + date);
        } catch (ParseException e) {
            System.out.println("日期格式错误!");
        }
    }
}


  • 在这个示例中,我们先从键盘输入一个字符串表示日期,然后创建了一个SimpleDateFormat对象,并指定日期格式为yyyy-MM-dd。接着,我们调用parse方法将输入的字符串转换为日期。如果输入的日期格式不正确,会抛出ParseException异常,我们在catch块中捕获并输出错误信息。
  • 注意,在使用SimpleDateFormat进行日期格式转换时,需要注意线程安全性,因为它是非线程安全的。如果需要在多线程环境下使用,可以考虑使用java.time.format.DateTimeFormatter类。