❶ java中utc時間怎麼轉換為本地時間
java utc轉本地時間的方法:
1、創建一個格式化時間對象simpleDateFormat,並初始化格式yyyy-MM-dd HH:mm:ss:
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
2、創建時區對象utcZone,獲取utc所在的時區
TimeZone utcZone = TimeZone.getTimeZone("UTC");
3、設置utc時區,為轉換做准備
simpleDateFormat.setTimeZone(utcZone);
4、獲取本地時間,並轉換
Date myDate = simpleDateFormat.parse(rawQuestion.getString("AskDateTime"));
5,按照上面的流程就轉換本地時間了。
❷ java 如何獲取當前系統的時區,不是時間
Calendarcal=Calendar.getInstance();
TimeZonetimeZone=cal.getTimeZone();
System.out.println(timeZone.getID());
System.out.println(timeZone.getDisplayName());
你試試這個行不行
❸ java 中獲取當前時間並返回Date類型變數
一樓給的不對吧,人家最後要Date類型的值,不要你格式化輸出。
你直接Date nowDate = new Date();不就是當前值了!!
關於時區,Date本來取得就是當前系統時間,系統時間明白嗎,就是你計算機設定好的時區,還用你自己管時區嗎!!
❹ java編程題目 輸出當前東京時間
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
public class Test55 {
public static void main(String[] args) {
TimeZone timeZoneTyokyo = TimeZone.getTimeZone("Japan");
Date date = new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
df.setTimeZone(timeZoneTyokyo);
System.out.println(df.format(date));
}
}
你用的時區不對,所以取的值有問題。可以用TimeZone.getAvailableIDs()獲取到可用時區名字的列表。
注意時間是絕對不變的,變的只是時區的顯示形式,所以用DaeFormat的setTimeZone方法來改顯示。
❺ 根據用戶輸入的時區信息,輸出當前時間,用java寫
public static void main(String[] args) {
System.out.println(getDateTime("GMT+8","yyyy-MM-dd hh:mm:ss"));
System.out.println(getDateTime("GMT+7","yyyy-MM-dd hh:mm:ss"));
System.out.println(getDateTime("GMT+6","yyyy-MM-dd hh:mm:ss"));
System.out.println(getDateTime("GMT+5","yyyy-MM-dd hh:mm:ss"));
System.out.println(getDateTime("GMT+4","yyyy-MM-dd hh:mm:ss"));
}
public static String getDateTime(String zone,String format){
SimpleDateFormat sdf=new SimpleDateFormat(format);
sdf.setTimeZone(TimeZone.getTimeZone(zone));
return sdf.format(new Date());
}
❻ java中如何獲取時區
//我實現一個時鍾窗口程序給你了,好讓你更容易理解,希望對你有幫助。
import java.awt.*;
import java.awt.event.*;
import java.util.*;
//世界時鍾
public class TimerTest {
public static void main(String[] args) {
new TimerTestFrame("世界時鍾");
}
}
class TimerTestFrame extends Frame {
/**
*
*/
private static final long serialVersionUID = 1L;
public TimerTestFrame(String s) {
super(s);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dispose();
System.exit(0);
}
});
setLayout(new GridLayout(2, 6));
ClockCanvas clk1 = new ClockCanvas("北京", "GMT+8"); // 創建時鍾
ClockCanvas clk2 = new ClockCanvas("巴黎", "GMT+2");
ClockCanvas clk3 = new ClockCanvas("華盛頓", "GMT-4");
ClockCanvas clk4 = new ClockCanvas("洛衫磯", "GMT-7");
ClockCanvas clk5 = new ClockCanvas("倫敦", "GMT+1");
ClockCanvas clk6 = new ClockCanvas("芝加哥", "GMT-5");
add(clk1);
add(clk2);
add(clk3);
add(clk4);
add(clk5);
add(clk6);
setSize(500, 350); // 設置框架寬高
setVisible(true);
}
}
class ClockCanvas extends Canvas implements Runnable {
/**
*
*/
private static final long serialVersionUID = 1L;
private int seconds = 0;
private String city;
private GregorianCalendar calendar;
Thread t;
public ClockCanvas(String c, String tz) {
city = c;
//也可以通過TimeZone.setTimeZone(String n)函數改變時區,n為時區參數名。
calendar = new GregorianCalendar(TimeZone.getTimeZone(tz));
t = new Thread(this);
t.start();
setSize(125, 125); // 設置畫布大小
setBackground(Color.black);
}
// 重寫父類的方法繪制時鍾圖形
public void paint(Graphics g) {
Graphics2Dg2d = (Graphics2D) g;
BasicStroke bstroke = new BasicStroke(2.0f);
g2d.setStroke(bstroke);
g2d.setColor(Color.green);
g2d.drawOval(0, 0, 100, 100);
bstroke = new BasicStroke(5.0f);
g2d.setStroke(bstroke);
g2d.drawLine(50, 0, 50, 5);
g2d.drawLine(0, 50, 5, 50);
g2d.drawLine(50, 95, 50, 98);
g2d.drawLine(95, 50, 98, 50);
double hourAngle = 2 * Math.PI * (seconds - 3 * 60 * 60)
/ (12 * 60 * 60);
double minuteAngle = 2 * Math.PI * (seconds - 15 * 60) / (60 * 60);
double secondAngle = 2 * Math.PI * (seconds - 15) / (60);
bstroke = new BasicStroke(5.0f);
g2d.setStroke(bstroke);
g2d.drawLine(50, 50, 50 + (int) (30 * Math.cos(hourAngle)),
50 + (int) (30 * Math.sin(hourAngle)));
bstroke = new BasicStroke(3.0f);
g2d.setStroke(bstroke);
g2d.drawLine(50, 50, 50 + (int) (40 * Math.cos(minuteAngle)),
50 + (int) (40 * Math.sin(minuteAngle)));
bstroke = new BasicStroke(1.0f);
g2d.setStroke(bstroke);
g2d.drawLine(50, 50, 50 + (int) (45 * Math.cos(secondAngle)),
50 + (int) (45 * Math.sin(secondAngle)));
g2d.setColor(Color.red);
g2d.drawString(city, 35, 115);
}
public void timeElapsed() {
//new Date()()獲得當前時間
System.out.println(new Date()());
calendar.setTime(new Date()());
seconds = calendar.get(Calendar.HOUR) * 60 * 60
+ calendar.get(Calendar.MINUTE) * 60
+ calendar.get(Calendar.SECOND);
}
public void run() {
try {
while (true) {
Thread.sleep(300);
timeElapsed();
repaint();
}
} catch (InterruptedException e) {
}
}
}
❼ Java程序如何根據經緯度生成其當地實時時間
思路:
通過經緯度獲取當地時區(網路有現成的例子)
獲取你電腦當前的時間
時間原則上是每隔一個時區相差一個小時,所以你可以根據你的時間加上或者減去時區去算出經緯度所在地的實時時間
❽ java怎麼獲取當前是星期六的所有時區
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
public class DBOP
{
public static void main(String [] arg)
{
TimeZone time = TimeZone.getTimeZone("GMT+8"); //設置為東八區
time = TimeZone.getDefault();// 這個是國際化所用的
System.out.println(time);
TimeZone.setDefault(time);// 設置時區
Calendar calendar = Calendar.getInstance();// 獲取實例
DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");//構造格式化模板
Date date = calendar.getTime(); //獲取Date對象
String str = new String();
str = format1.format(date);//對象進行格式化,獲取字元串格式的輸出
System.out.println(str);
}
}