Este artigo mostra como fazer o upload de arquivos para o servidor utilizando a linguagem C# da plataforma .NET com o Visual Studio 2003.
Neste primeiro artigo publicado no site DevMedia vou abordar a submissão de arquivos para o servidor utilizando a linguagem C# da plataforma .NET com o Visual Studio 2003, pois esta plataforma tem uma grande variedade de bibliotecas e no nosso exemplo não utilizaremos nenhum componente específico.
*********** início código evento onclick button
try
{
//inicializar as variáveis
string arq = fileImg.PostedFile.FileName;
string extensao = "";
double tamanho = 0;
//tamanho maximo do upload em kb
double permitido = 200;
//vamos utIlizar uma variavel para controlar a aceitação das regras
//se o valor padrão da variavel for alterado é porque alguma regra foi violada
string erroRegra="0";
// Teste para verificar se foi submetido o arquivo
if (fileImg.PostedFile !=null)
{
//identificamos o tamanho do arquivo
tamanho = Convert.ToDouble(fileImg.PostedFile.ContentLength)/1024;
//verificamos a extensão através dos últimos 4 caracteres
extensao = arq.Substring(arq.Length - 4).ToLower();
//para saber o nome do arquivo utilizaremos a propriedade GetFileName
//passando a string arq
string nomeArq = System.IO.Path.GetFileName(tira_acentos(arq));
//diretorio onde será gravado o arquivo
//faremos uma chamada ao método tira_acentos para
//remover espaços e caracteres indesejados.
//criar o diretório arquivos no mesmo local da aplicação
string diretorio = this.Server.MapPath("arquivos\"+tira_acentos(nomeArq));
// o tamanho acima do permitido - violação de regra
if (tamanho > permitido)
{
this.Label1.Text = "Tamanho Máximo permitido é de "+permitido+" kb!";
erroRegra="1";
}
// extensão diferente de jpg, doc, pdf e gif - violação de regra
if ( (extensao != ".jpg" && extensao != ".gif" && extensao!=".doc" && extensao!="pdf") )
{
this.Label1.Text ="Extensão inválida, só são permitidas .jpg, .doc, .pdf e .gif!";
erroRegra="2";
}
if(erroRegra=="0")
{
try
{
// verifica se já existe o nome do arquivo submetido
if(!File.Exists(diretorio))
{
fileImg.PostedFile.SaveAs(diretorio);
this.Label1.Text ="Arquivo enviado com sucesso!";
}
else
this.Label1.Text ="Já existe um arquivo com esse nome!";
}
//Caso ocorra alguma exceção será mostado no label
catch(UnauthorizedAccessException ex)
{
this.Label1.Text ="Erro no Upload:"+ex.Message;
}
}
}
}
catch
{
this.Label1.Text ="Erro no Upload";
}
*********** fim código evento onclick button
//Método que remove acentos, espaços e carateres indesejados
public static string tira_acentos(string texto)
{
string ComAcentos = "!@#$%¨&*()-?:{}][ÄÅÁÂÀÃäáâàãÉÊËÈéêëèÍÎÏÌíîïìÖÓÔÒÕöóôòõÜÚÛüúûùÇç ";
string SemAcentos = "_________________AAAAAAaaaaaEEEEeeeeIIIIiiiiOOOOOoooooUUUuuuuCc_";
for(int i=0; i < ComAcentos.Length; i++)
texto= texto.Replace(ComAcentos<em>.ToString(),SemAcentos<em>.ToString()).Trim();
return texto;
}

0 comentário (comente você também)
Siga-nos nas redes sociais »
Siga-nos no Facebook
Siga-nos no Twitter
Seguir @oficinadanetAssine nosso FEED/RSS
Você pode assinar nosso FEED/RSS pelo link, usando um leitor de RSS.Assine nossa Newsletter
Siga-nos no Google+
Mais lidas hoje »
Novos Posts »
carregando...