Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[52.14.221.113] |
|
Сообщ.
#1
,
|
|
|
Мне хотелось бы в конечном итоге переименовать файлы так, чтобы дата и время изменения файла стояли в начале имени файла. Тогда файлы на диске я могу выстроить по дате. Код для определения даты изменения файла и создания строки с этой датой
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 |
Сообщ.
#2
,
|
|
|
Ну наверняка должен существовать какой-то аналог printf'а:
sprintf( buf, "%04d-%02d-%02d_%s", dt.Year, dt.Month, dt.Day, stroka); |
Сообщ.
#3
,
|
|
|
Оказывается, все очень просто:
DateTime dt = File.GetLastWriteTime(sFile); string newDateString = dt.ToString("yyyyMMdd_HHmmss"); |