1.Calendar 转化 String
Calendar calendat = Calendar.getInstance()
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd")
String dateStr = sdf.format(calendar.getTime())
2.String 转化Calendar
String str="2012-5-27";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date =sdf.parse(str);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
3.Date 转化String
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
String dateStr=sdf.format(new Date());
4.String 转化Date
String str="2012-5-27";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date= sdf.parse(str);
5.Date 转化Calendar
Calendar calendar = Calendar.getInstance()
calendar.setTime(new java.util.Date())
6.Calendar转化Date
Calendar calendar = Calendar.getInstance()
java.util.Date date =calendar.getTime()
7.String 转成 Timestamp
Timestamp ts = Timestamp.valueOf("2012-1-14 08:11:00")
8.Date 转 TimeStamp
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = df.format(new Date());
Timestamp ts = Timestamp.valueOf(time);
获取当前日期之前的日期
calendar.add(Calendar.MONTH,-6);
calendar.add(Calendar.DATE, -n);
日期的加减:
String str="2012-5-27";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date =sdf.parse(str);
Date pre7Day = new Date(date.getTime() - (7 * 24 * 60 * 60 * 1000))
将毫秒数转化为日期格式
/***
* 将毫秒数转化为日期格式
* @param time 毫秒数
* @param dstPattern 日期目标格式yyyy-mm-dd
* @return
*/
public static String getFormatDateTime(long time, String dstPattern) {
Date date = new Date(time);
SimpleDateFormat dateFormat = new SimpleDateFormat(dstPattern);
return dateFormat.format(date);
}
将日期转成毫秒数
/**
* 将日期转成毫秒数
* @param str 日期
* @param pattern 日期的格式
* @return
* @throws ParseException
*/
public String formatData(String str , String pattern) throws ParseException{
SimpleDateFormat sdf= new SimpleDateFormat(pattern);
Date date =sdf.parse(str);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
return calendar.getTimeInMillis() + "";
}
获取今天的日期
SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd");
String nowDate = sDateFormat.format(new java.util.Date());
或者:
public String getTodayDate(){
SimpleDateFormat sf = new SimpleDateFormat("yyyyMMdd");
return sf.format(Calendar.getInstance().getTime());
}
四舍五入:
方法一:
double f = 111231.5585;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, RoundingMode.HALF_UP).doubleValue();
方法二:
new java.text.DecimalFormat("#.000").format(3.1416926);
将科学计数法表示的double值还原成原始值
/**
* 将科学计数法表示的double值还原成原始值
*
*/
public static String formatDouble(double number){
java.text.NumberFormat nf = java.text.NumberFormat.getInstance();
nf.setGroupingUsed(false);
return nf.format(number);
}
解决 java 中double计算不精确问题
/**
* 取余,获得准确的取余结果
* @param number
* @param number2
* @return
*/
private double getRemainderDouble(double number,double number2){
BigDecimal b = new BigDecimal(Double.toString(number));
BigDecimal c = new BigDecimal(Double.toString(number2));
BigDecimal d = b.remainder(c);
return d.doubleValue();
}
格式化日期到指定格式
public static String formatDate(String strDate ,String fromPattern, String toPattern){
SimpleDateFormat sdf= new SimpleDateFormat(fromParttern);
String result = "";
try {
Date date = sdf.parse(strDate);
sdf.applyPattern(toParttern);
result = sdf.format(date);
} catch (ParseException e) {
e.printStackTrace();
return result;
}
return result;
}