public void ExportarArquivo(TipoExportar tipo, IProgressoLog pLog) { string sExtensao = ""; switch (tipo) { case TipoExportar.teTXT: sExtensao = "txt"; break; case TipoExportar.teCSV: sExtensao = "csv"; break; case TipoExportar.teHTML: sExtensao = "html"; break; case TipoExportar.teXML: sExtensao = "xml"; break; case TipoExportar.teSQL: sExtensao = "sql"; break; } Aba aba = getAbaAtual(); form.sdExportar.InitialDirectory = Rotinas.ExtractFilePath(Application.ExecutablePath); form.sdExportar.FileName = aba.Nome + '.' + sExtensao; form.sdExportar.Filter = Rotinas.FILTRO_EXPORTAR; DialogResult retval = form.sdExportar.ShowDialog(); if (retval == DialogResult.OK) { FileInfo arquivo = new FileInfo(form.sdExportar.FileName); if (!arquivo.Exists) { form.Cursor = Cursors.WaitCursor; DiretorioBO.Instancia.exportarDiretorio(tipo, getAbaAtual(), arquivo.FullName, pLog); form.Cursor = Cursors.Default; Dialogo.mensagemErro("Exportação realizada com sucesso!"); } } }
public void ExportarArquivo(TipoExportar tipo, IProgressoLog pLog) { string sExtensao = ""; switch (tipo) { case TipoExportar.teTXT: sExtensao = "txt"; break; case TipoExportar.teCSV: sExtensao = "csv"; break; case TipoExportar.teHTML: sExtensao = "html"; break; case TipoExportar.teXML: sExtensao = "xml"; break; case TipoExportar.teSQL: sExtensao = "sql"; break; } Aba aba = getAbaAtual(); string sDiretorio = Rotinas.ExtractFilePath(Rotinas.ExecutablePath()); string sArquivo = aba.Nome + '.' + sExtensao; if (EscolhaArquivo.salvarArquivo(EscolhaArquivo.FILTRO_EXPORTAR, sDiretorio, sArquivo)) { FileInfo arquivo = new FileInfo(EscolhaArquivo.NomeArquivo); if (!arquivo.Exists) { form.GdkWindow.Cursor = new Gdk.Cursor(Gdk.CursorType.Watch); DiretorioBO.Instancia.exportarDiretorio(tipo, getAbaAtual(), arquivo.FullName, pLog); form.GdkWindow.Cursor = new Gdk.Cursor(Gdk.CursorType.Arrow); Dialogo.mensagemErro("Exportação realizada com sucesso!"); } } }
public void exportarDiretorio(TipoExportar tipo, Aba aba, string sNomeArquivo, IProgressoLog progressoLog) { string sTexto = "", sCR, sTAB, sTAB2, sSQL, sCondicaoTotal; Aba abaLocal = new Aba(); StringList listaLocal; List <Diretorio> listaDiretorio; sTAB = "\t"; sTAB2 = "\t\t"; sCR = "\n"; sCondicaoTotal = " where aba=" + aba.Codigo; sSQL = SQL_CONSULTA_ARQUIVO + sCondicaoTotal + " order by 1, 2, 3"; listaDiretorio = carregarDiretorio(sSQL, sCondicaoTotal, progressoLog); listaLocal = new StringList(); switch (tipo) { case TipoExportar.teCSV: { sTexto = "\"Aba\";\"Nome\";\"TamanhoBytes\";\"Tamanho\";" + "\"Tipo\";\"Modificado\";\"Atributos\";\"Caminho\""; } break; case TipoExportar.teHTML: { sTexto = "<!DOCTYPE html>" + sCR; sTexto += "<html>" + sCR; sTexto += "<body>" + sCR; sTexto += "<table border=\"1\" cellpadding=\"5\" cellspacing=\"0\">" + sCR; sTexto += sTAB + "<tr>" + sCR; sTexto += sTAB2 + "<th>Aba</th>" + sCR; sTexto += sTAB2 + "<th>Nome</th>" + sCR; sTexto += sTAB2 + "<th>Tamanho</th>" + sCR; sTexto += sTAB2 + "<th>Tamanho Formatado</th>" + sCR; sTexto += sTAB2 + "<th>Tipo</th>" + sCR; sTexto += sTAB2 + "<th>Modificado</th>" + sCR; sTexto += sTAB2 + "<th>Atributos</th>" + sCR; sTexto += sTAB2 + "<th>Caminho</th>" + sCR; sTexto += sTAB + "</tr>"; } break; case TipoExportar.teXML: { sTexto = "<diretorio>"; } break; case TipoExportar.teSQL: { abaLocal.Codigo = listaDiretorio[0].Aba.Codigo; abaLocal.Nome = listaDiretorio[0].Aba.Nome; sTexto = AbaBO.Instancia.abaToSQL(abaLocal); } break; } if (sTexto.Length > 0) { listaLocal.Add(sTexto); } foreach (Diretorio diretorio in listaDiretorio) { if (diretorio.Aba.Codigo == aba.Codigo) { if (tipo == TipoExportar.teTXT) { sTexto = diretorioToTXT(diretorio); } else if (tipo == TipoExportar.teCSV) { sTexto = diretorioToCSV(diretorio); } else if (tipo == TipoExportar.teHTML) { sTexto = diretorioToHTML(diretorio); } else if (tipo == TipoExportar.teXML) { sTexto = diretorioToXML(diretorio); } else if (tipo == TipoExportar.teSQL) { sTexto = diretorioToSQL(diretorio, true) + ";"; } listaLocal.Add(sTexto); } } if (tipo == TipoExportar.teHTML) { sTexto += sCR + "</table>" + sCR; sTexto += "</body>" + sCR; sTexto += "</html>" + sCR; } else if (tipo == TipoExportar.teXML) { sTexto = "</diretorio>"; } listaLocal.Add(sTexto); listaLocal.SaveToFile(sNomeArquivo); listaDiretorio.Clear(); listaLocal.Clear(); }