字符串转为date格式(java)
来源:互联网 发布:软件研发立项报告模板 编辑:程序博客网 时间:2024/04/30 13:59
import java.util.Calendar;
import java.util.Date;
public class DateDeal {
/*
* 处理得到的时间
* 返回格式为yyyy-MM-dd
* 不能处理的情况:
* 1.年份不为四个或两个字符的
* 2.年份为两个字符时,30年之前的加20,之后的加19
*/
private static String deal(String s) {
if(s.matches("^//d*$"))return s;
String year="";
String month="";
String day="";
int i=0;
//得到年
for(;i<s.length();i++){
if(i>3) break;
int y=(int)s.charAt(i)-(int)'0';
if(y>=0&&y<10){
year+=s.charAt(i);
}else{
break;
}
}
if(i<s.length()&&!(s.charAt(i)+"").matches("^//d$"))
i++;
//得到月
int now=i;
for(;i<s.length();i++){
if(i-now>1) break;
int m=(int)s.charAt(i)-(int)'0';
if(m>=0&&m<10){
month+=s.charAt(i);
}else{
break;
}
}
if(i<s.length()&&!(s.charAt(i)+"").matches("^//d$"))
i++;
//得到日
now=i;
for(;i<s.length();i++){
if(i-now>1) break;
int d=(int)s.charAt(i)-(int)'0';
if(d>=0&&d<10){
day+=s.charAt(i);
}else{
break;
}
}
if(year.length()==2){
if((int)year.charAt(0)-(int)'0'<3)
year="20"+year;
else
year="19"+year;
}
//月、日的越界处理
month="00"+month;
if("00".equals(month))
month="01";
if(Integer.parseInt(month.substring(month.length()-2, month.length()))>12)
month="12";
day="00"+day;
if("00".equals(day))
day="01";
Calendar c=Calendar.getInstance();
c.set(Integer.parseInt(year), Integer.parseInt(month)-1, 1);
int lastDay=c.getActualMaximum(Calendar.DAY_OF_MONTH);
if(Integer.parseInt(day.substring(day.length()-2, day.length()))>lastDay)
day=lastDay+"";
String birthday=year+"-"+month.substring(month.length()-2, month.length())+"-"+day.substring(day.length()-2, day.length());
return birthday;
}
}
- 字符串转为date格式(java)
- Java日期格式转化工具(date格式转为string格式,string转date,string转timestamp类型)
- 字符串转为Date类型
- 英文字符串转为Date
- 下列代码可以实现把Java的CST格式的时间字符串转为为Date对象和所需要的日期时间格式!
- JSON转为字符串,字符串转为JSON格式
- Java日期格式--字符串与Date格式的转换
- Java int类型转为2进制字符串格式输出
- Java将字符串格式的百分数转为小数
- 字符串转为json格式方法
- JavaScript日期字符串转为Date对象
- json返回date类型转为字符串
- DB2中将date类型转为字符串
- json返回date类型转为字符串
- 将日期字符串转为为日期格式如(20140102)
- Java 把日期时间字符串 格式化为Date对象
- java 字符串转化成Date类型,校验格式
- java Date类型时间转字符串格式时间
- Spring 依赖注入
- MySQL临时表中的Sql代码示例
- 堆和栈的区别
- C#正则表达式整理备忘
- jQuery操作cookie的插件
- 字符串转为date格式(java)
- cisco交换机密码破解
- URLRewriter.dll__config
- 项目计划
- WINCE 半透明及透明位图的实现技术
- 路由器实现pat技术的几条命令
- Java获取异常的堆栈信息
- 重新夯实基础,the c programingn language 再读笔记之类型、运算符与表达式
- cisco交换机安装操作系统ios