2010-05-10 14 views
10

Mam skrypt, który wyprowadza plik CSV. W jaki sposób sformatować daty lub pola daty i czasu, aby program Excel poprawnie przeanalizował to pole jako datę?Jak sformatować datę i czas, aby program Excel ją zrozumiał?

PS: Chciałbym również zachować informacje o strefach czasowych w stanie nienaruszonym.

+0

CSV nie jest bardzo dobrze zdefiniowanym formatem, aw środowiskach międzynarodowych ich interpretacja zależy od ustawień regionalnych komputera (dmy vs mdy) .Na przykład przecinek można zastąpić średnikiem. Unikam tego "nieformalnego", kiedy tylko jest to możliwe. –

+0

Nigdy nie widziałem "przecinka zastąpionego średnikiem" w pliku podającym się za CSV. W rzeczywistości nie pamiętam, kiedy ostatnio widziałem plik CSV, który nie był zgodny z RFC 4180 (). Jedynym pytaniem jest, jak reprezentować bogate obiekty, takie jak czasy. – Ken

Odpowiedz

-2

Chciałbym użyć formatu "dd/mm/rrrr hh: nn: ss". Nigdy nie miałem żadnych problemów z tym, że Excel zna ten format wcześniej.

+0

Co powiesz na strefy czasowe? – nickf

+0

Strefa czasowa musiałaby zostać dodana jako oddzielna kolumna. –

+2

Czy jest taki sam jak format "dd/MM/yyyy hh: mm: ss"? Program Excel nie odczytuje tego formatu poprawnie z plików CSV. Czyta daty tylko w formacie amerykańskim (mm/dd/rrrr), bez względu na ustawienia regionalne. Jest to błąd w Excelu, o ile widzę. – SDK

4

Format daty w programie Excel nie zawiera żadnych informacji o strefach czasowych. Wyeksportowałbym strefę czasową jako oddzielną kolumnę, być może jako przesunięcie od GMT, takie jak 5 lub -2. Osobiście preferuję jednoznaczny format daty rrrr-mm-dd.

+0

+5 lub -2 do czego? – nickf

+0

+5 lub -2 do Greenwich Mean Time (GMT), więc na przykład Eastern Standard Time będzie -5 do GMT, podczas gdy Paris będzie +1. – dendarii

+0

cóż, to właśnie mam na myśli, jak by ktoś wiedział? – nickf

Powiązane problemy