Вроде в C# такие методы были. В ту сторону копать. Или переводить дату в количество дней от Рождества Христова, прибавлять дни и вычислять матаном или через какой-нибудь онлайн сервис какое это число.Вопрос срочный, кто знает напишите.
А вывод даты в какой-то файл, потом через regex и опять внести в переменную?Вопрос срочный, кто знает напишите.
А, да, действительно. Но если помучаться, можно все это обойти))Да не. там же например 28ое число, + 5 дней например, это уже и изменение месяца.
Тут смысла что-то в файл выносить нет.
Вопрос срочный, кто знает напишите.
dateString = DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss");
string format = "yyyy-MM-dd-HH-mm-ss";
DateTime itemdate = DateTime.ParseExact(dateString, format, CultureInfo.InvariantCulture);
TimeSpan span = itemdate.Subtract(new DateTime(1970,1,1,0,0,0));
return span.TotalSeconds + 86400; // + 24 часа
DateTime exp = DateTime.Now; // Создаем текущую дату
exp = exp.AddDays(7); // Добавляем к ней 7 дней
project.Variables["exp_date"].Value = exp.ToString(@"dd'/'MM'/'yyyy"); // Записываем результат в переменную ZP
DateTime today = (Convert.ToDateTime(project.Variables["data"].Value));
DateTime answer = today.AddDays(Convert.ToDouble(project.Variables["day"].Value));
return answer;
а как сюда добавить переменную с проекта в которой будет количество дней, которое надо добавить?Свой код -> C# код
Табличка для форматирования даты https://msdn.microsoft.com/ru-ru/library/8kb3ddd4(v=vs.110).aspxКод:DateTime exp = DateTime.Now; // Создаем текущую дату exp = exp.AddDays(7); // Добавляем к ней 7 дней project.Variables["exp_date"].Value = exp.ToString(@"dd'/'MM'/'yyyy"); // Записываем результат в переменную ZP
Попробуйте так:а как сюда добавить переменную с проекта в которой будет количество дней, которое надо добавить?
exp = exp.AddDays(7);
в данном случае 7
---
Пробовал такие варианты.. не пошло..
DateTime exp = DateTime.Now; // Создаем текущую дату
exp = exp.AddDays(Convert.ToInt32(project.Variables["exp_date1"].Value)); // Добавляем к ней 1 дней
project.Variables["exp_date"].Value = exp.ToString(@"dd'.'MM'.'yyyy"); // Записываем результат в переменную ZP
точно!!Попробуйте так:
C#:DateTime exp = DateTime.Now; // Создаем текущую дату exp = exp.AddDays(Convert.ToInt32(project.Variables["exp_date1"].Value)); // Добавляем к ней 1 дней project.Variables["exp_date"].Value = exp.ToString(@"dd'.'MM'.'yyyy"); // Записываем результат в переменную ZP
Можно рассплитовать (Обработка текста - Split) последнее значение (год) в переменную, прибавить к нему 10 и снова собрать. Или немного видоизмененным кодом (изменение во 2-ой строке):Есть такого формат дата 02.11.2020 как год увеличить на 10 лет чтобы было 02.11.2030
DateTime exp = DateTime.Now; // Создаем текущую дату
exp = exp.AddYears(Convert.ToInt32(project.Variables["exp_date1"].Value)); // Добавляем к ней заданное кол-во лет
project.Variables["exp_date"].Value = exp.ToString(@"dd'.'MM'.'yyyy"); // Записываем результат в переменную ZP
А дату как с переменной взять?DateTime exp = DateTime.Now; // Создаем текущую дату
var exp = project.Variables["data_1"].Value;
DateTime exp = DateTime.Now; // Создаем текущую дату
exp = exp.AddYears(Convert.ToInt32("10")); // Добавляем к ней заданное кол-во лет
project.Variables["data2"].Value = exp.ToString(@"dd'.'MM'.'yyyy"); // Записываем результат в переменную ZP
А дату как с переменной взять?
string datasource = project.Variables["datasource"].Value; //Дата на входе
DateTime data = DateTime.ParseExact(datasource, "dd.MM.yyyy", null); // Дата на входе
data = data.AddYears(Convert.ToInt32(project.Variables["exp_date1"].Value)); // Добавляем к дате на входе заданное кол-во лет
project.Variables["exp_date"].Value = data.ToString(@"dd'.'MM'.'yyyy"); // Записываем результат в переменную exp_date
Подскажите пожалуйста вариант что надо, но как убрать 0:00:00Вопрос решился.
Мне нужен был такой вариант.Код:DateTime today = (Convert.ToDateTime(project.Variables["data"].Value)); DateTime answer = today.AddDays(Convert.ToDouble(project.Variables["day"].Value)); return answer;
Можно просто заметой убратьПодскажите, пожалуйста, вариант, что надо, но как убрать 0:00:00
0:00:00
, а ещё с помощью ToString()
msdn или используя GetDateTimeFormats()
msdn.ToString()
↓:DateTime today = (Convert.ToDateTime(project.Variables["data"].Value));
DateTime answer = today.AddDays(Convert.ToDouble(project.Variables["day"].Value));
return answer.ToString("dd.MM.yyyy");
Мой запрос к GPT-3:Приветствую , прочел все вышеизложенные варианты, и у меня остался вопрос.
У меня имеется переменная ( Дата ) формата - [MM'/'dd'/'yyyy HH:mm:ss], как я могу реализовать идею того, что:
DateTime exp = DateTime.Now; // Создаем текущую дату
будет создавать не нынешнюю дату и после этого прибавлять заданное/необходимое количество дней, а исходя уже из имеющейся у меня переменной добавлять к ней необходимое число дней и записывать в новую переменную. Чуть выше был такой - же вопрос как я понял, но с форматом года, но я неМНОГО чайник в c# и не понимаю как мне реализовать эту задачу...
Заранее спасибо за ответ
У меня имеется переменная ( Дата ) формата - [MM'/'dd'/'yyyy HH:mm:ss], как я могу реализовать идею того, что: DateTime exp = DateTime.Now; // Создаем текущую дату будет создавать не нынешнюю дату и после этого прибавлять заданное/необходимое количество дней, а исходя уже из имеющейся у меня переменной добавлять к ней необходимое число дней и записывать в новую переменную. Чуть выше был такой - же вопрос как я понял, но с форматом года, но я неМНОГО чайник в c# и не понимаю как мне реализовать эту задачу... Заранее спасибо за ответ
// Исходная строка даты
string dateString = "02/21/2023 12:34:56"; //можно установить переменую project.Variables["var"].Value
// Преобразуем строку в переменную типа DateTime
DateTime date = DateTime.ParseExact(dateString, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture);
// Добавляем необходимое количество дней
int daysToAdd = 10;
DateTime newDate = date.AddDays(daysToAdd);
// Выводим результат
Console.WriteLine("Исходная дата: {0}", date);
Console.WriteLine("Новая дата: {0}", newDate);
Ошибку получаю:Мой запрос к GPT-3:
Ответ:Скопировал твое сообщение:У меня имеется переменная ( Дата ) формата - [MM'/'dd'/'yyyy HH:mm:ss], как я могу реализовать идею того, что: DateTime exp = DateTime.Now; // Создаем текущую дату будет создавать не нынешнюю дату и после этого прибавлять заданное/необходимое количество дней, а исходя уже из имеющейся у меня переменной добавлять к ней необходимое число дней и записывать в новую переменную. Чуть выше был такой - же вопрос как я понял, но с форматом года, но я неМНОГО чайник в c# и не понимаю как мне реализовать эту задачу... Заранее спасибо за ответ
Для решения вашей задачи вам необходимо сначала преобразовать строку в переменную типа DateTime, а затем добавить необходимое количество дней с помощью метода AddDays() и сохранить результат в новой переменной.
Вот пример кода на C#, который должен справиться с этой задачей:
В данном примере мы сначала создаем строку dateString, содержащую дату в нужном формате. Затем мы используем метод ParseExact() для преобразования этой строки в переменную типа DateTime. В качестве второго аргумента этого метода мы передаем строку формата, который соответствует формату исходной строки даты.C#:// Исходная строка даты string dateString = "02/21/2023 12:34:56"; //можно установить переменую project.Variables["var"].Value // Преобразуем строку в переменную типа DateTime DateTime date = DateTime.ParseExact(dateString, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture); // Добавляем необходимое количество дней int daysToAdd = 10; DateTime newDate = date.AddDays(daysToAdd); // Выводим результат Console.WriteLine("Исходная дата: {0}", date); Console.WriteLine("Новая дата: {0}", newDate);
Дальше он что-то сломался седня не стабильный
Ошибку получаю:
Компиляция кода Ошибка в действии "CS0103" "The name 'CultureInfo' does not exist in the current context". [Строка: 5; Cтолбец: 72]
using System;
using System.Globalization;
//все что выше общий код
// Исходная строка даты
string dateString = "02/21/2023 12:34:56";
// Преобразуем строку в переменную типа DateTime
DateTime date = DateTime.ParseExact(dateString, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture);
// Добавляем необходимое количество дней
int daysToAdd = 10;
DateTime newDate = date.AddDays(daysToAdd);
// Выводим результат
Console.WriteLine("Исходная дата: {0}", date);
Console.WriteLine("Новая дата: {0}", newDate);
Первый вариант решения тоже был - GPT, но сегодня он очень загружен.Мой запрос к GPT-3:
Ответ:Скопировал твое сообщение:У меня имеется переменная ( Дата ) формата - [MM'/'dd'/'yyyy HH:mm:ss], как я могу реализовать идею того, что: DateTime exp = DateTime.Now; // Создаем текущую дату будет создавать не нынешнюю дату и после этого прибавлять заданное/необходимое количество дней, а исходя уже из имеющейся у меня переменной добавлять к ней необходимое число дней и записывать в новую переменную. Чуть выше был такой - же вопрос как я понял, но с форматом года, но я неМНОГО чайник в c# и не понимаю как мне реализовать эту задачу... Заранее спасибо за ответ
Для решения вашей задачи вам необходимо сначала преобразовать строку в переменную типа DateTime, а затем добавить необходимое количество дней с помощью метода AddDays() и сохранить результат в новой переменной.
Вот пример кода на C#, который должен справиться с этой задачей:
В данном примере мы сначала создаем строку dateString, содержащую дату в нужном формате. Затем мы используем метод ParseExact() для преобразования этой строки в переменную типа DateTime. В качестве второго аргумента этого метода мы передаем строку формата, который соответствует формату исходной строки даты.C#:// Исходная строка даты string dateString = "02/21/2023 12:34:56"; //можно установить переменую project.Variables["var"].Value // Преобразуем строку в переменную типа DateTime DateTime date = DateTime.ParseExact(dateString, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture); // Добавляем необходимое количество дней int daysToAdd = 10; DateTime newDate = date.AddDays(daysToAdd); // Выводим результат Console.WriteLine("Исходная дата: {0}", date); Console.WriteLine("Новая дата: {0}", newDate);
Дальше он что-то сломался седня не стабильный
string dateString = project.Variables["last_change_status_date"].Value;
DateTime exp = DateTime.ParseExact(dateString, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture);
exp = exp.AddDays(3); // Добавляем к дате 3 дня
project.Variables["new_change_status_date"].Value = exp.ToString(@"MM'/'dd'/'yyyy"); // Записываем результат в переменную ZP
using System.Globalization;
Да сарян. Я просто отправлял тз получал ответ и сразу писал на форум, обычно я добиваюсь рабочего вариантаНепомогло, плохой ИИ.. ))
Уже лучше, но теперь с DateTime проблема.Первый вариант решения тоже был - GPT, но сегодня он очень загружен.
Действительно код выглядит так, словно он должен сработать, но пока что выдает ошибку:
Компиляция кода Ошибка в действии "CS0103" "The name 'CultureInfo' does not exist in the current context". [Строка: 5; Cтолбец: 72]
но проблему решил.
Вот мой код решения кому нужно:
так-же добавил:C#:string dateString = project.Variables["last_change_status_date"].Value; DateTime exp = DateTime.ParseExact(dateString, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture); exp = exp.AddDays(3); // Добавляем к дате 3 дня project.Variables["new_change_status_date"].Value = exp.ToString(@"MM'/'dd'/'yyyy"); // Записываем результат в переменную ZP
using System.Globalization;
в Директивы using и общий код
"MM/dd/yyyy HH:mm:ss" входныеУже лучше, но теперь с DateTime проблема.
Выполнение действия CSharp OwnCode. Строка не распознана как действительное значение DateTime.