Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - Уменьшение строк кода для преобразования даты и времени изменения файла в строку

Ответить
Настройки темы
.NET - Уменьшение строк кода для преобразования даты и времени изменения файла в строку

Старожил


Сообщения: 164
Благодарности: 2

Профиль | Отправить PM | Цитировать


Мне хотелось бы в конечном итоге переименовать файлы так, чтобы дата и время изменения файла стояли в начале имени файла. Тогда файлы на диске я могу выстроить по дате. Код для определения даты изменения файла и создания строки с этой датой
Код: Выделить весь код
using System;
using System.Text;
using System.Text.RegularExpressions;
using System.IO;
using System.Collections.Generic; // List
using System.Collections;

namespace EsEngWord
{
  class Program
  {

    static void ShowMes(string strMes)
    {
      Console.WriteLine(strMes);
      Console.WriteLine("\nПрограмма завершила работу. Нажмите любую клавишу\n");
      Console.ReadKey();
      Environment.Exit(1);
    }

    public static void Main()
	  {
      string sY, sM, sD, sDt, sH, sMin, sS, sTm, sFile;
      sFile = "IMG_0003.JPG";
      Console.WriteLine(File.GetLastWriteTime(sFile));
      DateTime dt = File.GetLastWriteTime(sFile);
      sY =  dt.Year.ToString();
      sM =  dt.Month.ToString();
      sD = dt.Day.ToString();
      sDt = sY + sM + sD;
      Console.WriteLine(sDt); 
      if(sM.Length == 1)
        sM = "0" + sM;
      if (sD.Length == 1)
        sD = "0" + sD;
      sDt = sY + sM + sD; 
      sH = dt.Hour.ToString();
      sMin = dt.Minute.ToString();
      sS = dt.Second.ToString();
      sTm = sH + sMin + sS;
      Console.WriteLine(sTm);
      if (sH.Length == 1)
        sH = "0" + sH;
      if (sMin.Length == 1)
        sMin = "0" + sMin;
      if (sS.Length == 1)
        sS = "0" + sS;
      sTm = sH + sMin + sS;
      string sDtTm = sDt + "_" + sTm;
      Console.WriteLine(sDtTm);
      ShowMes("");
   }
  } // class
} //  namespace
работает, но очень много строк кода. Я имею в виду не тестовый вывод на консоль, а проверку строк (элементов даты и времени изменения файла) для добавления в случае необходимости 0. Можно ли уменьшить код для проведения проверок строки и добавления 0 в случает строки с одним символом? Проект разместил по ссылке https://yadi.sk/d/p3EselRjPGXb_Q - из-за картинки он занимает 2,5 Мб.

Отправлено: 21:58, 10-01-2020

 

Пользователь


Сообщения: 139
Благодарности: 66

Профиль | Отправить PM | Цитировать


tumanovalex,
Код: Выделить весь код
DateTime dt = File.GetLastWriteTime(sFile);
string newDateString = dt.ToString("yyyyMMdd_HHmmss");
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:42, 10-01-2020 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Ветеран


Contributor


Сообщения: 25778
Благодарности: 7508

Профиль | Отправить PM | Цитировать


Цитата tumanovalex:
Тогда файлы на диске я могу выстроить по дате. »
Вы и так можете «выстроить их по дате» создания или последней модификации, используя сортировку.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:00, 10-01-2020 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - Уменьшение строк кода для преобразования даты и времени изменения файла в строку

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Помогите правильно добавить строку в .cmd для изменения файла Hosts BKPB Скриптовые языки администрирования Windows 4 28-06-2017 14:08
CMD/BAT - [решено] Добавление времени и даты к имени файла russianracer201507 Скриптовые языки администрирования Windows 5 18-08-2016 14:52
CMD/BAT - [решено] Перенос даты изменения файла с одного на другой файловый сервер ROBOCOPY sea707 Скриптовые языки администрирования Windows 3 28-01-2016 02:06
VBS/WSH/JS - [решено] Просмотр даты изменения файла и отправка сообщения SanyaJoker Скриптовые языки администрирования Windows 7 01-04-2011 10:12
Нужна прорамма для пакетного изменения HTML кода. RAY Вебмастеру 3 19-02-2003 03:28




 
Переход