Как получить правильный формат даты после использования получить текст в папке даты? - PullRequest
0 голосов
/ 14 февраля 2020

Я перепробовал все, что мог придумать, чтобы получить правильный формат даты. Кто-нибудь может помочь с этой проблемой RPA в UiPath. Я использовал операцию 'get text', чтобы получить дату папки, и после этого попытался использовать

Datetime.ParseExact(Str variable,"dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture).

. Это выдает ошибку:

Назначить: строка не была признан действительным DateTime.

Ваша помощь очень ценится.

edit: я теперь обратился за помощью к другу, который понял это. Ошибка была в строке, которую не было видно, потому что в строке был невидимый символ, который я извлек через действие get text. Решение состоит из 2 шагов:

  1. назначьте другую переменную точно такой же дате и используйте оператор if, чтобы выяснить, равны ли эти две строки, и вы обнаружите, что они не совпадают. .

  2. Теперь используйте регулярное выражение для захвата только цифр и косой черты / дефиса, который избавит от невидимого символа.

Ответы [ 2 ]

1 голос
/ 14 февраля 2020

Попробуйте использовать " dd_MM_yyyy " вместо " dd / MM / yyyy ".

0 голосов
/ 10 марта 2020

Причина в том, что UiPath / VB. Net имеет привычку использовать форматирование даты в США, даже если вы используете информацию о культуре ... Это настоящая боль

Попробуйте:

pDateString = "21/02/2020"
Assign a Date type variable = Date.ParseExact(pDateString,"dd/MM/yyyy",nothing)

Здесь мы говорим синтаксическому анализатору использовать формат даты Engli sh ... Возвращаемый тип даты будет в формате США, но вы можете просто преобразовать обратно в Великобританию, если вам нужно, используя что-то вроде:

pDateString ( "дд / мм / гггг")

...