Як перетворити рядок на дату

Як перетворити рядок на дату

Перетворення рядка на дату - одна з найчастіших операцій, з якими стикається програміст при написанні певних програм або скриптів. Кожна мова по-своєму реалізує цю функцію і має власний інструментарій для обробки рядкового типу даних.

Інструкція

1. Мова програмування Delphi для перетворення рядка на дату використовує функцію StrToDate (), при цьому рядок повинен мати формат "число число число". За зворотне перетворення відповідає функція DceToStr (). Якщо необхідно перетворити дату формату "01 січня 2000", для початку доведеться перетворити значення місяця на число, а потім здійснювати висновок за допомогою відповідної функції.

2. У C # також використовується відповідна функція. Наприклад, якщо дата має формат "Sat, 01 Jan 2000", можна скористатися функцією Convert.ToDate () або Date.Parse ().

3. У PHP існує спеціальна функція strtotime (). Наприклад, запит "" echo strtotime ("01 January 2000"); "" переведе вказаний рядок на дату і виведе його на екран. Якщо необхідно перевести рядок типу "01012001" у правильний формат дати, то найкраще скористатися регулярними виразами:function string_and_time($time) {return preg_replace(“/(\d{2})(\d{2})(\d{4})/e”,”\\’.match_month(‘\\2’).’\\3”,$time); }echo string_and_time(01012001);

4. Для C++ існує функція sscanf (), яка робить відповідні перетворення. Якщо використовувати бібліотеку Qt4, можна скористатися функцією "QDate::fromString(“01.01.2001”, “dd.MM.yyyy”)"".

5. Для Pascal з перетворенням рядків на дату легко справляється функція StrToDate (), однак якщо у вас в програмі використовуються назви місяців, то доведеться використовувати VarToDceTime ():varDateOne, DateTwo, DateThree: TDateTime;BeginDateOne := VarToDateTime(‘January 1, 2000’);ShowMessage(DateToStri(DateOne));end;

6. У Java для перетворення можна скористатися наступним скриптом:Java.lang.Integer:String myString = “1”;Int my = Integer.parseInt(myString);Java.text.DateFormat:DateFormat formDate = DateForman.getDateInstance();Java.util.Date:Date ourDate = dateFormat.parse(“01.01.2000”);