double數值與日期型之間的相互轉換

2021-04-12 18:27:51 字數 1653 閱讀 5799

double數值與日期型之間的相互轉換

double數值與日期型之間的相互轉換 

在c#中,數值型與日期型是可以相互轉的  

一、從double型到date:  datetime.fromoadate(double型)  

fromoadate()方法的日期零點值為2023年12月30日0點0分0秒0毫秒,順逆推為加減一天  

如:  

datetime thedate;  

thedate = datetime.fromoadate(0);  

// thedate.tostring()等於「1899-12-30 0:00:00」   

thedate = datetime.fromoadate(2);  

// thedate.tostring()等於「1900-1-1 0:00:00」  

thedate = datetime.fromoadate(-1);  

// thedate.tostring()等於「1899-12-29 0:00:00」  

二、從date型到double:   

只要知道某一天到日期零點值相差的天數,就可以從date型轉換為double型  

如:2023年9月30日;  

string strdate;  

double i=0;  

do  

while(strdate!="2003-9-30"); //這個條件和系統的語言有關,這裡是xp中文版系統的設定,其它語言的系統應改為相應日期格式。  

運算結果的 i 值就是 2023年9月30日的 double值      

三、用fromoadate()方法求兩個日期之間相差天數:  

求任意兩個日期之間的天數差,用fromoadate()方法會變得簡單而精確,不用考慮閏年和大小月問題,並且可以精確到小數點後任意位。下例精確到小數點後一位:  

求當前日期到2023年3月1日相距的天數:  

string strcurdate,strothdate;   

double i=0, j=0;  //可以不從0開始,以減少迴圈次數 

do   

while(strcurdate!=datetime.now.tostring("d"));   

j=i; //可以不要此句,這是為減少迴圈次數 

do   

while(strothdate!="2104-3-1");   

string strday=(j-i).tostring("f1") ;  

strday就是兩日間的天數,計算結果為36677.0天 

四、同理,求當前日期n天後的日期值也很簡單: 

求:今天過100天的日期值: 

string strcurdate;   

double i=37000; 

do   

while(strcurdate!=datetime.now.tostring("d"));   

datetime thedate; 

thedate = datetime.fromoadate(i+100); 

thedate就是100天後的日期值   

Java中double和byte數值之間的轉換

首先說一下,在計算機內部,是怎麼表示負數的?我想計算機科班出身的人應該都知道,正整數在計算機中用原碼來表示的,而負整數在計算機中用補碼來表示的 所以 3 在單位元組的計算機中應該表示為它的原碼 00000011 而 3在單位元組的計算機中應該表示為它的補碼,求補碼的話,先求出 3的相反數 3的原碼 ...

時間戳與日期之間的轉換方法

1 將時間戳轉換成日期格式 var date new date 時間戳 獲取乙個時間物件 下面是獲取時間日期的方法 比如需要這種格式的日期 yyyy mm dd hh mm ss var date new date 1566921599000 y date.getfullyear m date.ge...

PHP時間戳與日期之間的轉換

1.php中時間轉換函式 strtotime today date y m d h i unixtime 2.php中獲得今天零點的時間戳 要獲得零點的unix時間戳,可以使用 todaytime strtotime today 然後再使用date y m d h i todaytime 轉換為日期...