public Arquivo Obter(Arquivo arquivo) { ArquivoDa _da = null; string strNovoCaminho = string.Empty; if (!File.Exists(arquivo.Caminho)) { strNovoCaminho = arquivo.DiretorioConfiguracao.TrimEnd('\\') + "\\" + arquivo.Diretorio.TrimEnd('\\') + "\\" + arquivo.TemporarioNome; if (!File.Exists(strNovoCaminho)) { throw new Exception("Arquivo não encontrado"); } else { arquivo.Caminho = strNovoCaminho; _da = new ArquivoDa(_esquema); _da.AtualizarCaminho(arquivo); } } arquivo.Buffer = File.Open(arquivo.Caminho, FileMode.Open, FileAccess.Read, FileShare.Read); return(arquivo); }
public Arquivo SalvarTemp(Stream st) { if (st == null) { throw new ArgumentNullException("Stream de arquivo é nulo."); } string fileName = ObterNome(); try { Salvar(st, fileName); } catch (IOException) { DiretoriosAtivo[_idxDir] = false; _idxDir = DiretoriosAtivo.IndexOf(true); if (_idxDir >= 0) { return(SalvarTemp(st)); } else { throw; } } Arquivo arq = new Arquivo(); arq.TemporarioNome = Path.GetFileName(fileName); arq.TemporarioPathNome = fileName; return(arq); }
public Arquivo Copiar(Arquivo arquivo, Dictionary <Int32, String> dirOrigem, Dictionary <Int32, String> diretorios, string divisaoPorQtd) { arquivo.TemporarioPathNome = dirOrigem.Single(x => File.Exists(x.Value + "\\" + arquivo.TemporarioNome)).Value; arquivo.Extensao = Path.GetExtension(arquivo.Nome); return(Copiar(arquivo, diretorios, divisaoPorQtd, null)); }