2011-01-17 3 views
0

У меня есть файл с 20 000 датами в нем, которые мне нужно преобразовать и сохранить обратно в файл. Даты являются единственной вещью в файле, и они находятся на отдельных строках.конвертировать формат времени на весь файл

Это то, что они не являются

2011-01-03T16:44:09Z 

и это то, что мне нужно

2011-01-03 12:34:00 
+0

На каком языке? –

+0

не имеет значения, просто будет обрабатывать файл и затем делать с ним. – tim

+0

Что это за формат '2011-01-03T16: 44: 09Z'? –

ответ

1

Если у вас есть рубин в вашей системе, вы можете создать файл так:

date_parser.rb


require "date" 

new_dates = File.open("new_dates.txt","w") 

File.open("old_dates.txt","r") do |f| 
    while line = f.gets 
    newdate = DateTime.parse(line) 
    new_dates << newdate.strftime("%Y-%m-%d %H:%M:%S") << "\n" 
    end 
end 

new_dates.close  

Тогда вы просто запустите

$ Руби date_parser.rb

Все, что новые даты будут в "new_dates.txt" Этот сценарий предполагает, что вы имеете файл "old_dates.txt" с каждый день в другой строке.

+0

Может ли DateTime.parse проанализировать формат, который предоставил OP? –

+0

это только первая дата в файле – tim

+0

@timg, вы правы .. Я не ставил внутренний цикл !!! – Christian

0

Кристиан прав, но я думаю, что и нужно строчную "дата"

require "date"

+0

Ooops ... Исправлено !. – Christian

1

В Excel FTW.

= ТЕКСТ ((ЗАМЕЩЕНИЕ (ЗАМЕЩЕНИЕ (А1, «Z», «»), «Т», «»)) - (5/24), «ГГГГ-ММ-ДД ЧЧ: ММ: СС»)

Смежные вопросы