Help to convert a code to D
Alexandre
alebencz at gmail.com
Mon Aug 26 06:07:41 PDT 2013
Hi :)
I'm starting with D language... and, I try to convert a C# code
to D...
So, my C# code, I get file informations, and, I create folders
with all days of month of specific year...
So, that is my C# code...
using System;
using System.IO;
using System.Linq;
using System.Collections.Generic;
namespace Organizador
{
class Organiza
{
private string[] MesesDoAno =
{
"Janeiro", "Fevereiro",
"Marco", "Abril",
"Maio", "Junho",
"Julho", "Agosto",
"Setembro", "Outubro",
"Novembro", "Dezembro"
};
private string DirReceb = string.Empty;
public Organiza()
{
CriaDiretorios();
MoveArquivos();
}
private void CriaDiretorios()
{
DirReceb = "RECEBIDOS\\" +
DateTime.Now.Year.ToString() + "\\";
// Cria o diretorio "root"
if (!Directory.Exists(DirReceb))
Directory.CreateDirectory(DirReceb);
// cria os diretorios dos meses do ano
for (int i = 0; i < 12; i++)
if (!Directory.Exists(DirReceb + MesesDoAno))
Directory.CreateDirectory(DirReceb +
MesesDoAno[i]);
// cria os diretorios com os dias dos meses e ano
for (int i = 1; i <= 12; i++)
{
string dia;
string mes;
var ano = DateTime.Now.Year;
var DiasDoMes =
DateTime.DaysInMonth(DateTime.Now.Year, i);
if (i < 10)
mes = "0" + i.ToString();
else
mes = i.ToString();
for (int j = 1; j <= DiasDoMes; j++)
{
if (j < 10)
dia = "0" + j.ToString();
else
dia = j.ToString();
string StrDia = string.Format("{0}-{1}-{2}",
dia, mes, ano);
string StrData = DirReceb + MesesDoAno[i-1] +
"\\" + StrDia;
if (!Directory.Exists(StrData))
Directory.CreateDirectory(StrData);
}
}
}
private void MoveArquivos()
{
string[] filters = new[] { "*.REM", "*.RET" };
for (int i = 0; i < 2; i++)
{
DirectoryInfo di = new
DirectoryInfo(Directory.GetCurrentDirectory());
var files = di.GetFiles(filters[i]);
foreach (var fi in files)
{
var mes = fi.CreationTime.Month;
var strdt =
fi.CreationTime.ToString("dd-MM-yyyy");
string DestDir = DirReceb + MesesDoAno[mes -
1] + "\\" + strdt + "\\" + fi.Name;
File.Move(fi.Name, DestDir);
}
}
}
}
class Program
{
static void Main(string[] args)
{
try
{
new Organiza();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
So, to create directory and move files... I get the documentation
on that page: http://dlang.org/phobos/std_file.html
But, I don't know, How I can get the file information and what is
the best way to create the directory's, so, I need some help :)
I appreciate the help :)
More information about the Digitalmars-d
mailing list