Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: Filetime ja Date ongelmia.

Quirzo [08.06.2007 23:49:03]

#

Eli pitäisi saada tiedoston aikaa muutettua.
Miten saan tehtyä formilta löytyvistä tiedoista (year, month, day jne) daten, joka kelpaa fileinfolle?

''Tämä toimii
   Dim FI As New IO.FileInfo("c:/testi.txt")
        FI.CreationTime = DateTime.Now
''Mutta kuinka teen tämän?
   Dim FI As New IO.FileInfo("c:/testi.txt")
        Dim MyDate As Date
        Dim Data() As String


        MyDate.AddDays(Day1.Value)
        MyDate.AddMonths(Month1.Value)
        MyDate.AddYears(Year1.Value)

        Data = Split(Time1.Text, ":")
        MyDate.AddHours(CInt(Data(0)))
        MyDate.AddMinutes(CInt(Data(1)))
        MyDate.AddSeconds(CInt(Data(2)))
 FI.CreationTime = MyDate
''Tämä siis valittaa, ettei ole oikean win32 filetime. Jos laitan sen filetimeksi, sehän on silloin LONG -tyyppinen eikä enää DATE -tyyppinen, eikä se käy!
'Apuva :D

Kiitos!

Ja PS: Olen aika uusi näiden visual basic -päivämäärien käsittelyssä, eipä ole juuri ollut tarvetta :p

Pöytälamppu [09.06.2007 10:34:17]

#

Huomaa että AddMonths (ja muut Add-funktiot) palauttaa uuden daten. Eli koita muuttaa koodi muotoon:

MyDate = MyDate.AddDays(Day1.Value)
MyDate = MyDate.AddMonths(Month1.Value)
...

Tai lyhyemmin:

Dim MyDate As New Date(Year1.Value, Month1.Value, Day1.Value, CInt(Data(0)), CInt(Data(1)), CInt(Data(2)))

Quirzo [09.06.2007 12:11:34]

#

Jees, sain tänään aamulla tuon ratkaistua tuolla "as new date(päläpälä)" Kiitos kuitenkin =)

Olin tavallaan kokeillut sitä, mutten tajunnut että siihen voi laittaa nuo arvot. (Siinähän lukee aluksi vain jotain ticks jne)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta