Java项目开发时间获取分为:系统时间 和 网络时间 。
一般Java开发中时间获取基本上使用系统当前时间,但是像‘社交通信’,‘购物平台’等就需要获取网络时间。
import java.net.URL;
import java.net.URLConnection;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Time {
public static void main(String[] args) {
/**
* 获取系统时间
*/
//date类系统时间获取
Date day=new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //设置日期格式
System.out.println("Date类-未设置日期格式:"+day);
System.out.println("Date类-设置日期格式:"+df.format(day));
//Calendar类系统时间获取
Calendar c = Calendar.getInstance();
System.out.println("Calendar类-未设置日期格式:"+c.getTime());
int year = c.get(Calendar.YEAR); //年份获取
int month = c.get(Calendar.MONTH) + 1; //月份获取 Calendar类获取的月份是从1开始
int day1 = c.get(Calendar.DAY_OF_MONTH); //月份中的某一天
int hour = c.get(Calendar.HOUR_OF_DAY); //一天的某小时
int minute = c.get(Calendar.MINUTE); //分钟
int second = c.get(Calendar.SECOND); //秒
System.out.println("Calendar类-设置日期格式:"+year+"-"+month+"-"+day1+" "+hour+":"+minute+":"+second+"\n");
/**
* 获取网址时间
*/
String url1 = "http://www.ntsc.ac.cn"; //中国科学院国家授时中心
String url2 = "http://time.tianqi.com"; //北京时间
String url3 = "http://tv.cctv.com"; //央视网
System.out.println("中国科学院国家授时中心时间:"+VisitURL(url1));
System.out.println("北京时间:"+VisitURL(url2));
System.out.println("央视时间:"+VisitURL(url3));
}
/**
* 网址访问
* @param url 网址
* @return urlDate 对象网址时间
*/
public static String VisitURL(String url){
String urlDate = null;
try {
URL url1 = new URL(url);
URLConnection conn = url1.openConnection(); //生成连接对象
conn.connect(); //连接对象网页
Date date = new Date(conn.getDate()); //获取对象网址时间
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //设置日期格式
urlDate = df.format(date);
} catch (Exception e) {
e.printStackTrace();
}
return urlDate;
}
}
输出结果:
未设定日期格式:
CST:可视为美国,澳大利亚,古巴或中国的标准时间
Sun : 星期简写
Apr:月份简写
由此发现各个网站的时间都是不相同的,所以在Java项目开发中时间需求依情况而定