Codigo para criar arquivo de log
Publicado por Claudio Rocha de Jesus 02/04/2009
[ Hits: 13.061 ]
Homepage: www.zambotecnologia.com.br
No meu estudo de C# estou trabalhando em um programa para se conectar em um servidor FTP e enviar arquivos automaticamente.
Este código será agregado ao projeto, e caso gere algum erro gravar em um arquivo de log.
/// <summary>
/// CreateLog.cs created with MonoDevelop
/// Ira receber as mensagens de erro do programa e gerar em arquivo texto.
/// @category Utilitarios
/// @package FTPLib
/// @author Claudio Rocha de Jesus <crochadejesus@yahoo.com.br>
/// @license http://www.opensource.org/licenses/gpl-3.0.html GPLv3
/// @version
/// @since 1.0
/// @todo Gerar log em arquivo separado quando gerar algum erro.
///
/// Informacoes para compilacao:
/// Linux - Mono
/// gmcs -t:exe -r:System.dll -out:CreateLog.exe CreateLog.cs
/// Windows
/// csc /t:exe /r:System.dll /out:CreateLog.exe CreateLog.cs
/// </summary>
using System;
using System.IO;
public class CreateLog
{
private string localPath;
/// <summary>
/// Metodo setter setSourcePath
/// Define o caminho onde arquivo sera criado
/// </summary>
/// <param name="localPath">
/// A <see cref="System.String"/>
/// </param>
/// <return>
/// A <see langword="void"/>
/// </return>
public void setSourcePath(string localPath)
{
this.localPath = localPath;
}
/// <summary>
/// Metodo getter getSourcePath
/// Retorna o caminho onde o arquivo sera criado
/// </summary>
/// <returns>
/// A <see cref="System.String"/>
/// </returns>
protected string getSourcePath()
{
return localPath;
}
/// <summary>
/// Metodo construtor da classe, CreateFile
/// </summary>
public CreateLog()
{
setSourcePath(".");
}
/// <summary>
/// Metodo FileNamer
/// Cria um arquivo usando como prefixo 2FTP, acrescenta a data e hora da criacao como sufixo.
/// </summary>
/// <returns>
/// A <see cref="System.String"/>
/// </returns>
protected string FileNamer()
{
DateTime dateNow = DateTime.Now;
string fileName = "2FTP_" + String.Format("{0:MMddyyyyHHmmss}", dateNow) + ".log";
return fileName;
}
/// <summary>
/// Metodo DirectoryLog
/// Ira verificar se o diretorio de log existe no diretorio passado,
/// caso nao exista ira cria-lo.
/// </summary>
/// <returns>
/// Retorna variavel localPathLog <see cref="System.String"/>
/// </returns>
protected string DirectoryLog()
{
string localPathLog = localPath + "log/";
if (Directory.Exists(localPathLog))
{
return localPathLog;
}
else
{
try
{
Directory.CreateDirectory(localPathLog);
return localPathLog;
}
catch (Exception e)
{
Console.WriteLine("Nao foi possivel criar o diretorio {0} por que {1}.", localPathLog, e);
return localPathLog;
}
}
}
/// <summary>
/// Metodo Creater
/// Cria o arquivo com o caminho completo
/// </summary>
public void Creater()
{
string fileName = FileNamer();
string localPathLog = DirectoryLog();
string fullFileName = localPathLog + fileName;
try
{
File.Create(fullFileName);
}
catch (Exception e)
{
Console.WriteLine("Nao foi possivel criar o arquivo {0}.", e);
}
}
/// <summary>
/// Metodo Main
/// </summary>
public static void Main()
{
CreateLog cf = new CreateLog();
cf.setSourcePath("/home/rocha/Documentos/arquivos/sistemas/projects/2FTP/");
cf.Creater();
}
}
Números de caracteres em arquivo
leitura/escrita de dados/estruturas em arquivo
Programinha que busca arquivos
Pequeno simulador de Banco de Dados
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Warcraft II Remastered no Linux? (6)
O programa assinador digital (5)









