Chcę dodać sygnaturę czasową do nazw plików podczas tworzenia plików, ale większość metod DateTime, które próbowałem, wyświetla coś ze spacjami i ukośnikami. Na przykład:
Debug.WriteLine(DateTime.Now.ToString()); // <-- 9/19/2012 1:41:46 PM
Debug.WriteLine(DateTime.Now.ToShortTimeString()); // <-- 1:41 PM
Debug.WriteLine(DateTime.Now.ToShortDateString()); // <-- 9/19/2012
Debug.WriteLine(DateTime.Now.ToFileTime()); // <-- 129925501061462806
ToFileTime()
działa, ale nie jest do końca czytelny dla człowieka. Jak mogę sformatować dane wyjściowe na czytelny dla człowieka znacznik czasu z datą i godziną, których można użyć w nazwie pliku lub rozszerzeniu? Najlepiej coś takiego 2011-19-9--13-45-30
?
c#
datetime
filenames
datetime-format
pdizz
źródło
źródło
Odpowiedzi:
Możesz użyć tego:
źródło
Chciałbym skorzystać z ISO 8601 formatu, bez przekładek:
źródło
DateTime.Now.ToString("o")
, da ci toyyyy-MM-ddTHH:mm:ss.fffffff-HH:mm
(gdzie ostatnia godzina i minuta przesunięcia to +/- GMT). To prawda, nie działałoby to jako format nazwy pliku, ale"o"
formatowanie dobrze znać.Mam podobną sytuację, ale chcę spójny sposób, aby móc używać DateTime.Parse również z nazwy pliku, więc wybrałem
Kiedy chcę przeanalizować, mogę po prostu odwrócić wywołanie zamiany. W ten sposób nie muszę wpisywać żadnych informacji o rymmdd ani zgadywać, na jakie formaty pozwala DateTime.Parse.
źródło
Poniższa lista najczęściej używanych specyfikatorów formatu czasu.,
Korzystając z powyższego, będziesz mógł utworzyć unikalną nazwę dla swojej nazwy pliku.
Tutaj podałem przykład
LUB
Jeśli nie wolisz używać symboli, możesz spróbować również tego.,
Mam nadzieję, że to pomoże komuś teraz lub w przyszłości. :)
źródło
Osobiście lubię to w ten sposób:
Ponieważ rozróżnia datę i godzinę.
źródło
Możesz spróbować
źródło
Korzystanie z interpolacji ciągu i specyfikatora formatu :
Lub jeśli nie jesteś w Ameryce:
źródło
Możesz utworzyć ścieżkę do swojego pliku w następujący sposób:
źródło