㈠ java 分别 取昨天零点 和 二十四点
new date()获取当前系统时间,在设置小时,分钟,秒数位0点的,转化为毫秒数,减去24小时的毫秒数,再转化成时间对象,就是的了,第二个同样
㈡ Java 获取当前时间的小时(24小时制)
使用new Date()获取时间,通过SimpleDateFormat格式化类对Date进行格式话时间。
具体代码如下:注意HH大写代表24小时制。
输出结果:1510416000000,2017-11-12。方便的实现了string转时间的功能。
㈢ Java取当前时间
tomcat时间跟系统时间不一致的问题解决方法
摘自 -- 黑夜的博客
一,在catalina.bat中
配置如下:
set JAVA_OPTS=%JAVA_OPTS% -Duser.timezone=GMT+08 -Xms256m -Xmx800m
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties"
-Xms256m -Xmx800m(初始化内存大小为256m,可以使用的最大内存为800m),
-Duser.timezone=GMT+08 //设置为北京时间
二,在eclipse中设置
在 首选项->Tomcat ->JVM Settings 项,设定JRE的版本为'jre1.5.0_06',并且添加如下几个JVM Parameters:
-Xms128m
-Xmx512m
-Dfile.encoding=UTF8
-Duser.timezone=GMT+08
㈣ java 中cal.get(Calendar.HOUR_OF_DAY) 取小时 如果是中午12点取值为0 我怎么样才能取到12
cal.get(Calendar.HOUR_OF_DAY) 取的就是24时钟数
cal.get(Calendar.HOUR) 取的就是12时钟数
看一下它们的注释就清楚了。
/**
* Field number for <code>get</code> and <code>set</code> indicating the
* hour of the morning or afternoon. <code>HOUR</code> is used for the
* 12-hour clock (0 - 11). Noon and midnight are represented by 0, not by 12.
* E.g., at 10:04:15.250 PM the <code>HOUR</code> is 10.
*
* @see #AM_PM
* @see #HOUR_OF_DAY
*/
public final static int HOUR = 10;
/**
* Field number for <code>get</code> and <code>set</code> indicating the
* hour of the day. <code>HOUR_OF_DAY</code> is used for the 24-hour clock.
* E.g., at 10:04:15.250 PM the <code>HOUR_OF_DAY</code> is 22.
*
* @see #HOUR
*/
public final static int HOUR_OF_DAY = 11;
如果使用的是cal.get(Calendar.HOUR),可能通过cal.get(Calendar.AM_PM)的返回值来判断是上午还是下午,如果返回0,则是上午,如果返回1,则是下午。判断的时候,最好用类定义的常量来比较。
if(Calendar.AM==cal.get(Calendar.AM_PM)){
//上午
}else /*if(Calendar.PM==cal.get(Calendar.AM_PM))*/{
//下午
}
㈤ java取下一天的零点,求大神帮忙不胜感激!
private Date getTimeOf12() {
Calendar cal = Calendar.getInstance();
cal.setTime(new Date());
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
cal.add(Calendar.DAY_OF_MONTH, 1);
return cal.getTime();
}
试试 这个
㈥ java 获取当前时间与零点的时间差
一般情况下不会出现如题所示的问题,既然出现了我们就要想办法解决之。以我的机器为例,我的当前系统时间是北京时间2011-08-31T08:00:00,但是newDate()得到的却是:2011-08-31T00:00:00。表示java得到的时间比当前系统时间提前了8个小时,那么我们就要想办法把java得到的时间向后推迟8个小时。解决的办法是:
1、找到你用的jre文件夹,以本机为例:C:\Program Files\Java\jdk1.5.0\jre
2、在上述文件夹下有个zi文件夹,我们的工作都在这里。
3、zi文件夹下有一个Etc文件夹,我们要做的工作就是从这个文件夹下找到对应的GMT文件替换zi下GMT文件。
4、选择哪个文件呢?如果java获取的时间+N=当前系统时间,就选择GMT-N文件,重命名为GMT,覆盖掉zi下的GMT文件,如果java获取的时间-N=当前系统时间,就选择GMT+N文件,重命名为GMT,覆盖掉zi下的GMT文件。
5、再运行一下你的程序看时间是不是正确了,如果还是不正确,请确认你的jre目录是否选得正确。
㈦ Java菜鸟问题(与获取计算机系统时间相关)
您好!
对于问题一:
这个方法的意思是系统当前时间与1970年1月1日0点0分0秒的毫秒差
对于问题二:
下面是实现的方法之一
public static void main(String[] args)
{
Calendar c = Calendar.getInstance();
//现在的时间(单位:毫秒)
long nowMills = c.getTimeInMillis();
//第二个参数是设置月的,月是基于0的
//arg list:year,month,day,hour,minute,second
c.set(2011, 4, 4, 23, 59, 59);
long setMills = c.getTimeInMillis();
long a=setMills-nowMills;
System.out.println("2011年5月4日距当前时间分钟数:"+a/(60*1000));
}
希望对你有帮助!
㈧ java 日期 怎么 去 零
SimpleDateFormat
用这个去转。
思路是这样的,循环去掉最后0,要保留偶数位,也就是说20091010的最后一个0要保留。
(判断的时候,先看字符串的长度是奇数还是偶数,如果是奇数,)
然后根据长度,去顶格式yyyy-MM-dd或者yyyy-MM或者yyyy等等情况。
还是我写吧,写完给你。
public class StringToDate {
public String stringToDate(String str){
int length=str.length();
char c="0".charAt(0);
if(str.length()%2==1){
if(Character.valueOf(c).equals(Character.valueOf(str.charAt(length-1)))){
str=str.substring(0,str.length()-1);
return stringToDate(str);
}else{
return str;
}
}else{
if(Character.valueOf(c).equals(Character.valueOf(str.charAt(length-1)))&&
Character.valueOf(c).equals(Character.valueOf(str.charAt(length-2))) ){
str=str.substring(0,str.length()-2);
return stringToDate(str);
}else{
return str;
}
}
}
public static void main(String[] args) {
StringToDate std=new StringToDate();
System.out.println(std.stringToDate("200901010000"));
System.out.println(std.stringToDate("200901000000"));
System.out.println(std.stringToDate("200901010000"));
System.out.println(std.stringToDate("200910010000"));
System.out.println(std.stringToDate("200910"));
System.out.println(std.stringToDate("200910000000"));
}
}
结果
20090101
200901
20090101
20091001
200910
200910
应该可以了,就是递归判断字符串的长度,奇数判断最后一位是否为0,偶数就判断后2位是否为0.
㈨ 在JAVA中如何判断当前时间是不是整点
System.currentTimeMillis()产生一个当前的毫秒,这个毫秒其实就是自1970年1月1日0时起的毫秒数,用来计算当前毫秒与1970年1月1日之间的毫秒差。
那么我们就可以longtime=System.currentTimeMillis();
然后换算一下小时,发现1小时等于3600s等于3600000ms。
那么我们把这个long类型的time进行一次取余运算。
intmin=time%3600000;
那么只要min的值小于一分钟,即60000ms即可。
if(min<60000)System.out.println("当前时间为整点.");
elseprintln("非整点.");
整体简化代码如下:
if(System.currentTimeMillis()%3600000<60000)System.out.println("当前时间为整点.");
elseprintln("非整点.");
㈩ java怎么取下一天的零点
//取当前时间的下一日期整点 供参考
SimpleDateFormat format = null;
Date date = null;
Calendar myDate = Calendar.getInstance();
myDate.add(Calendar.DAY_OF_MONTH, 1);
date = myDate.getTime();
format = new SimpleDateFormat("yyyy-MM-dd 00:00:00");
String rtnYes = format.format(date);
System.out.println(rtnYes);