首页 javaWEB java根据时区 北京时间和其他国家时间互换

java根据时区 北京时间和其他国家时间互换

北京时间换算 /** * 北京时间转换成 别的时区时间 * @param stime * @param timeNum …

北京时间换算

	/**
	 * 北京时间转换成 别的时区时间
	 * @param stime
	 * @param timeNum
	 */
	public  static  Date setTimeConvert(Date stime,  String timeNum) {



		double   convertNum= Double.parseDouble(timeNum);
		// 东加西减
		// 以北京时间 为准
		if(convertNum>0){
			//西方时间点
			double num =-(convertNum+8);
			stime=addDateMinut(stime, num);

		}else{
			//东方时间点
			double num= Math.abs(convertNum);
			double diff=num-8;
			stime=addDateMinut(stime,diff);

		}
		return   stime;
	}

	public static Date addDateMinut(Date date, double hour){

		String hourStr=String.valueOf(hour);

		Calendar cal = Calendar.getInstance();
		cal.setTime(date);
		int h=0;
		if(hourStr.indexOf(".")>-1){
			String hours[]=hourStr.split("\\.");
			h=Integer.parseInt(hours[0]);
			double minute=Double.parseDouble(("0."+hours[1]))*60;
			int m=(int)minute;
			cal.add(Calendar.MINUTE, m);// 24小时制

		}else{
			h=Integer.parseInt(hour+"");

		}
		cal.add(Calendar.HOUR, h);// 24小时制
		date = cal.getTime();
		System.out.println("after:" + date);  //显示更新后的日期
		cal = null;
		return date;
	}


	/**
	 *  别的时间转换成北京时间
	 * @param stime
	 * @param timeNum
	 * @return
	 */
	public static Date setTimeToBeiJing(Date stime, String timeNum) {

		double   convertNum= Double.parseDouble(timeNum);
		// 东加西减
		// 以北京时间 为准
		if(convertNum>0){
			//西方时间点
			double num =(convertNum+8);

			stime=addDateMinut(stime, num);

		}else{
			//东方时间点
			double num= Math.abs(convertNum);
			double diff=0;

			diff=8-num;
			stime=addDateMinut(stime,diff);
		}
		return stime;

	}
	/**
	 * @param args
	 * @throws ParseException
	 */
	public static void main(String[] args) throws ParseException {
//		System.out.println(formatDate(parseDate("2010/3/6")));
//		System.out.println(getDate("yyyy年MM月dd日 E"));
//		long time = new Date().getTime()-parseDate("2012-11-19").getTime();
//		System.out.println(time/(24*60*60*1000));

		//北京时间转换成 别的区时间
//		Date stime= new Date();
//		Date etime= new Date();
//		setTimeConvert(stime,etime,-7);
//		System.out.println("stime"+stime);

		//别的时区转换成北京时间
//莫斯科时间
//		2019-7-29 09:39:48


		Date stime = DatetimeUtils.parseStr2Date("2019-7-29 09:39:48", "yyyy-MM-dd HH:mm:ss");

		setTimeToBeiJing(stime,"-2");
	}

 

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

为您推荐

nodejs 整理记录

nodejs 整理记录

下载包 https://blog.csdn.net/m0_59878114/article/details/120274...
websocket测试html

websocket测试html

<!DOCTYPE html> <html> <head> <meta cha...
bigdemical两个数比较大小

bigdemical两个数比较大小

/*int result = bigdemical1.compareTo(bigdemical2) result = -...
Beetl2.7 中文文档

Beetl2.7 中文文档

Beetl目前版本是2.7.23,相对于其他java模板引擎,具有功能齐全,语法直观,性能超高,以及编写的模板容易维护等...
纯CSS实现多个便签在一行展示,拖动滚动

纯CSS实现多个便签在一行展示,拖动滚动

div <h2>请注意需要在移动端预览,PC端拖拽无效果</h2> <div class=...
返回顶部