Java 将字符串转换为“时出现不可解析的日期异常”;yyyy MM dd HH:MM:ss“;
您好,我正在尝试将字符串19611015转换为日期格式(“yyyy-MM-dd HH:MM:ss”),然后再将其存储到sybase数据库表中。我尝试了以下代码,该代码给出了错误: 无法解释的日期:“19611015”Java 将字符串转换为“时出现不可解析的日期异常”;yyyy MM dd HH:MM:ss“;,java,sql,parsing,datetime,sybase,Java,Sql,Parsing,Datetime,Sybase,您好,我正在尝试将字符串19611015转换为日期格式(“yyyy-MM-dd HH:MM:ss”),然后再将其存储到sybase数据库表中。我尝试了以下代码,该代码给出了错误: 无法解释的日期:“19611015” 我一直在阅读一些冗长而复杂的解决方案,其中一些建议使用Locale。有人可以解释一下,也许是一个替代的简单解决方案,将我的字符串转换成我上面所追求的日期格式。谢谢。字符串中的日期为yyyyMMdd格式,希望将其转换为yyyy-MM-dd HH:MM:ss,因此请使用以下代码:
我一直在阅读一些冗长而复杂的解决方案,其中一些建议使用Locale。有人可以解释一下,也许是一个替代的简单解决方案,将我的字符串转换成我上面所追求的日期格式。谢谢。字符串中的日期为yyyyMMdd格式,希望将其转换为yyyy-MM-dd HH:MM:ss,因此请使用以下代码:
DateFormat originalFormat = new SimpleDateFormat("yyyyMMdd");
DateFormat targetFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = originalFormat.parse("19611015");
String formattedDate = targetFormat.format(date);
System.out.println(formattedDate);
输出:
1961-10-15 00:00:00
阿喀琉斯,下面的代码可能会解决您的问题:
package com.test;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class LongToDate {
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(19611015 * 1000);
String dateFormatString = "yyyy-MM-dd HH:mm:ss";
DateFormat dateFormat = new SimpleDateFormat(dateFormatString);
String result = dateFormat.format(cal.getTime());
System.out.println(result);
//Output: 1969-12-10 15:46:18
}
}
19611015
的格式不是yyyy-MM-dd HH:MM:ss
19611015的格式是哪种?您应该使用yyyyymmdd而不是yyyy-MM-dd HH:MM:ssI我尝试了yyyyymmdd,但仍然没有成功。我想让它看起来像1961-10-15 00:00:0019611015变成1969-12-10 15:46:18?你好,邹祖,我正在将长值转换为MS,然后进行解析。如果这不正确,请告诉我。19611015
表示1961-10-15
。还有19611015*1000
overflows.Opps,我认为19611015是毫秒,我的错。即使是,你的代码也不会工作,因为19611015*1000
溢出。
package com.test;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class LongToDate {
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(19611015 * 1000);
String dateFormatString = "yyyy-MM-dd HH:mm:ss";
DateFormat dateFormat = new SimpleDateFormat(dateFormatString);
String result = dateFormat.format(cal.getTime());
System.out.println(result);
//Output: 1969-12-10 15:46:18
}
}