• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zapis do pliku CSV w C# zapis daty i godziny

+1 głos
241 wizyt
pytanie zadane 9 lutego 2021 w C# przez disaster Bywalec (2,020 p.)

Cześć.
Poproszę o wsparcie.
Jak mógłbym coś dopisać w kolumnie obok w pliku.csv w C#

DateTime data = DateTime.Today;
                    sw = new StreamWriter(path, true);
                    string text = Imieinazw.Text;
                    sw.WriteLine(text);
                    sw.WriteLine(data);
                    sw.Close();

Obecnie mam, że przeskakuje mi do następnego wiersza:
Imię
Data

A chciałbym w osobnych kolumnach:
Imię  Data
I przejście do następnego wiersza

Teraz zwraca mi tylko datę, co mogę dopisać aby zwracało datę z godziną? 

Dzięki!

2 odpowiedzi

+1 głos
odpowiedź 9 lutego 2021 przez VBService VIP (144,590 p.)
wybrane 10 lutego 2021 przez disaster
 
Najlepsza

wink (w oparciu o wpis @Snejki)

string date = DateTime.Now.ToString("dd.MM.yyyy");
string time = DateTime.Now.ToString("hh:mm.ss");
string full_name = Imieinazw.Text;
 
sw = new StreamWriter(path, true); 
   sw.WriteLine("{0};{1};{2}",full_name,date,time);
sw.Close();

lub

string full_name = Imieinazw.Text;
 
sw = new StreamWriter(path, true); 
   sw.WriteLine("{0};{1:dd.MM.yyyy};{1:hh:mm.ss}",full_name,DateTime.Now);
sw.Close();

lub

sw = new StreamWriter(path, true); 
   sw.WriteLine("{0};{1:dd.MM.yyyy};{1:hh:mm.ss}",Imieinazw.Text,DateTime.Now);
sw.Close();

String Class ]  [ Composite formatting ]  [ DateTime.Now ]

+1 głos
odpowiedź 9 lutego 2021 przez Snejki Stary wyjadacz (14,520 p.)

Powinieneś pobierać datę w inny sposób np.

var date = DateTime.Now;

Oprócz tego, aby wskazać konkretny format daty jaki oczekujesz, możesz zamienić format daty na stringa podajac format daty jaki oczekujesz, np.:

date.ToString("dd.MM.yyyy hh:mm.ss")

 

komentarz 9 lutego 2021 przez disaster Bywalec (2,020 p.)

Super, działa prawidłowo.
Dziękuję! 
 

  var date = DateTime.Now;                  
  sw = new StreamWriter(path, true);
  string text = Imieinazw.Text;
  sw.WriteLine(text);
  sw.WriteLine(date.ToString("dd.MM.yyyy hh:mm.ss")); 
  sw.Close();

Jeszcze kwestia zapisu w kolumnie obok a nie w następnym wierszu. 

komentarz 9 lutego 2021 przez Snejki Stary wyjadacz (14,520 p.)
korzystasz z WriteLine, co jak sama nazwa wskazuje - po zapisaniu tego co przkeażesz do metody, to na końcu tworzy nową linię.

Musisz skorzystać z Write(), aby nie tworzyć nowej linii. Pamiętaj również o separatorze kolumn, chyba w csv jest to średnik
komentarz 9 lutego 2021 przez disaster Bywalec (2,020 p.)

Udało się. Dziękuję! 

var date = DateTime.Now;  
sw = new StreamWriter(path, true);              
string text = Imieinazw.Text;

sw.WriteLine(text + ";" + date.ToString("dd.MM.yyyy") + ";" + date.ToString("hh:mm.ss"));

sw.Close();      

 

komentarz 9 lutego 2021 przez VBService VIP (144,590 p.)

wink

string date = DateTime.Now.ToString("dd.MM.yyyy");
string time = DateTime.Now.ToString("hh:mm.ss");
string full_name = Imieinazw.Text;

sw = new StreamWriter(path, true); 
    sw.WriteLine("{0};{1};{2}",full_name,date,time);
sw.Close();

 

Podobne pytania

0 głosów
2 odpowiedzi 219 wizyt
pytanie zadane 22 marca 2021 w C# przez disaster Bywalec (2,020 p.)
+1 głos
1 odpowiedź 26 wizyt
pytanie zadane 16 grudnia 2021 w C# przez disaster Bywalec (2,020 p.)
0 głosów
0 odpowiedzi 120 wizyt

86,483 zapytań

135,239 odpowiedzi

300,477 komentarzy

57,230 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...