2012-10-29 69 views
0

轉換年和月入days.first轉換回年,月和現在要轉換回days.code就像轉換年和月到天在vb.net

if len >366 
len1 = cstr (math.floor(len/365)) 
len = len mod 365 
len1 = len * 365 

感謝下面的一個提前

+0

什麼?您想做什麼? – MarioDS

+0

想要轉換這樣的東西...... 365天而不是1年。現在,我設法顯示1年,但轉換回天仍然有一個錯誤。明確的 – markoz007

+2

嗯,這不是說實話。什麼是錯誤? – MarioDS

回答

-2
days = years * 365.25 
years = days/365.25 
+0

@Saulis至於我的代碼上面我顯示的東西,但仍然得到了錯誤的日子..但多年來,我得到它正確 – markoz007

+3

@ markoz007請做**不**接受這個答案。有人可能會認爲這是好的編碼,不是! –

+0

在我看來,如果你有像「平均壽命爲67歲」這樣的信息,並且你想把它轉換成天,我的方法就足夠了。當然,在其他一些情況下,它不是:) –

1

DateTime.DaysInMonth Method

Dim July as integer = 7 
' daysInJuly gets 31. 
Dim daysInJuly as integer = System.DateTime.DaysInMonth(2001, July); 

然後拿到天在年:

Private Function GetDaysInAYear(year As Integer) As Integer 
    Dim days As Integer = 0 
    Dim i As Integer = 1 
    While i <= 13 
     days += DateTime.DaysInMonth(year, i) 
     i++ 
    End While 
    Return days 
End Function 
+1

有一個更簡單的方法來獲得一年的日子:如果DateTime.IsLeapYear(年)然後返回366否則返回365 :) –

+0

好點,不知道這是否會工作爲1753年。 –

0

要獲得天,一年你可以簡單地這樣做:

Dim year As Integer = 2012 ' Set year here 
Dim totalDaysInYear As Integer = New Date(year, 12, 31).Subtract(New Date(year, 1, 1)).Days 

OR:(容易理解)

Dim year As Integer = 2012 ' Set year here 
Dim d1 As New Date(year, 1, 1) 
Dim d2 As New Date(year, 12, 31) 
Dim totalDaysInYear As Integer = d2.Subtract(d1).Days 

爲了讓天月:

Dim year As Integer = 2012 
Dim DaysInMonth As Integer = Date.DaysInMonth(year, 11) ' Evaluates Nov 2012