Avatar billede simon_jacobsen Nybegynder
18. oktober 2007 - 19:03 Der er 7 kommentarer og
1 løsning

gem datetime til fil og load igen

hej

hvordan laver jeg et datetime object til en string og omsætter denne string til et datetime object igen ?

har prøvet:
string gem = dato.ToFileTime().ToString();

og så loade det igen med:
DateTime dato = new DateTime(long.Parse(gem);
men uden held.

På Forhånd Tak :)
Avatar billede kalp Novice
18. oktober 2007 - 19:05 #1
du smider din string i DateTime.Parse(string her)

dint dato til en string er bare..

Dato.ToString()
Avatar billede kalp Novice
18. oktober 2007 - 19:06 #2
Det skal siges du forvirrer med din overskrift da din kode ikke henviser til noget angående at gemme til fil.

Derfor viser jeg blot hvordan du convertere mellem DateTime og String.

Du kan også benytter Convert.ToDateTime(din string her)
til at konvertere en string til en datetime.
Avatar billede nielle Nybegynder
18. oktober 2007 - 19:08 #3
Hvorfor vil du konvertere den til en streng? Hvorfor ikke bare gemme den direkte?
Avatar billede kalp Novice
18. oktober 2007 - 19:12 #4
I kode kunne en version være følgende (hvis det skal gemmes på fil)

string Path = @"c:\fil.txt";
System.IO.StreamWriter writer = new StreamWriter(@Path);
writer.WriteLine(DateTime.Now.ToString());
writer.Close();
DateTime date = DateTime.Parse(File.ReadAllText(@Path).Trim());
Avatar billede nielle Nybegynder
18. oktober 2007 - 19:15 #5
F.eks. noget i denne stil:

    static class SerializeDatetime
    {
        private const string fileName = @"C:\SerializeDatetime.bin";

        public static void Save(DateTime timeStamp)
        {
            Stream stream = File.OpenWrite(fileName);
            BinaryFormatter formatter = new BinaryFormatter();
            formatter.Serialize(stream, timeStamp);
            stream.Close();
        }

        public static DateTime Load()
        {
            if (File.Exists(fileName))
            {
                Stream stream = File.OpenRead(fileName);
                BinaryFormatter formatter = new BinaryFormatter();
                DateTime timeStamp = (DateTime)formatter.Deserialize(stream);
                return timeStamp;
            }
            else
                return DateTime.Today.AddDays(-7);
        }
    }
Avatar billede nielle Nybegynder
29. oktober 2007 - 18:28 #6
Hvad med noget respons?
Avatar billede simon_jacobsen Nybegynder
29. oktober 2007 - 20:30 #7
sry, fandt ud af det med serializing, det er super smart :)
så det var den løsning jeg brugte.
smid lige et svar :)
Avatar billede nielle Nybegynder
29. oktober 2007 - 22:31 #8
Svar :^)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester