從基礎做起 呼叫裝置系統的時間日期

2021-07-25 11:52:00 字數 1491 閱讀 3989

實現乙個很基礎很必備的功能,獲取系統時間日期。

首先理清思路:用乙個類timeanddate來呼叫系統的時間日期,為了讓專案看起來簡單明瞭用另乙個類來初始化年月日等所需引數,最後需要在主函式中重新整理顯示,這裡需要說明的是在主函式中需要生命週期中的onresume()來實現裝置與程式的互動,不然並不會顯示出當前的時間日期,這也是我在整個專案裡面所犯的錯誤。

布局檔案中放了兩個textview,居中顯示,然後在mainactivity中定義並初始化,接下來直接貼timeanddate和引數systemtimeinfo的**:

public class timeanddate 

return timeanddate; }

private systemtimeinfo mtime=new systemtimeinfo();

public systemtimeinfo getsystemtimeanddate()else if("2".equals(dayofweek))else if("3".equals(dayofweek))else if("4".equals(dayofweek))else if("5".equals(dayofweek))else if ("6".equals(dayofweek)) else if ("7".equals(dayofweek))

mtime.weekdaystring="星期"+dayofweek;

// 24小時制

******dateformat dateformat24 = new ******dateformat("hh:mm");

// 12小時制

******dateformat dateformat12 = new ******dateformat("yyyy-mm-dd hh:mm:ss");

mtime.timestring=dateformat24.format(calendar.getinstance().gettime());

// mtime.timestring=dateformat12.format(calendar.getinstance().gettime());

return mtime;

}}public class systemtimeinfo

注意,這裡使用到時區,所以要在mainifest中新增: ,而且使用valueof方法將string型變數轉換為integer型別。

回到mainactivity中,首先更新textview,如下:

private void refreshdateandtime()
然後在onresume()中呼叫refreshdateandtime(),接下來使用傳送廣播:
private final broadcastreceiver receiver=new broadcastreceiver() 

} }

};

其中每過一分鐘更新一次時間,至此,執行程式,顯示當前裝置的系統時間日期。

從 read 看系統呼叫的耗時

1 fread和read有何不同?先看兩段 兩個檔案的功能完全一樣,開啟同乙個名為test.file的檔案,並逐字節地讀取整個檔案。將它們編譯後得到的可執行程式fread和read分別在同一臺pc linux系統 上執行,得到的如果如下 發現沒有?fread與read的耗時相差數十倍之多!可見啊 r...

從 read 看系統呼叫的耗時

1 fread和read有何不同?先看兩段 將它們編譯後得到的可執行程式fread和read分別在同一臺pc linux系統 上執行,得到的如果如下 2 是什麼引起的差異?但是,事情為什麼會是這樣的呢?讓我們用strace來看看 那麼再想想,我們讀的是什麼?是磁碟。難道上面提到的差異,就是因為這40...

更改系統的時間linux的基礎命令

我們一般使用 date s 命令來修改系統時間。比如將系統時間設定成1996年6月10日的命令如下。date s 06 10 96 將系統時間設定成下午1點12分0秒的命令如下。date s 13 12 00 注意,這裡說的是系統時間,是linux由作業系統維護的。在系統啟動時,linux作業系統將...