Ejemplo n.º 1
0
        public static void PegaImagem(string imagem, string nomeImagem, string contexto)
        {
            var    context = contexto.Split('/');
            string hd      = context[0];

            var arq = File.Open(hd + ".txt", FileMode.Open);
            HD  hdManipulado;

            using (StreamReader sr = new StreamReader(arq))
            {
                hdManipulado = JsonConvert.DeserializeObject <HD>(sr.ReadToEnd());
            }

            Image im = Image.FromFile(imagem);

            MemoryStream ms = new MemoryStream();

            im.Save(ms, im.RawFormat);

            byte[] array = ms.ToArray();

            var imText = Convert.ToBase64String(array);

            hdManipulado.Imagem.NomeImagem  = nomeImagem;
            hdManipulado.Imagem.ImagemTexto = imText;

            File.Delete(hd + ".txt");
            CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
        }
Ejemplo n.º 2
0
        public static void CriaDiretorio(string contexto, string nomeDir)
        {
            var    context = contexto.Split('/');
            string hd      = context[0];
            var    arq     = File.Open(hd + ".txt", FileMode.Open);
            HD     hdManipulado;

            using (StreamReader sr = new StreamReader(arq))
            {
                hdManipulado = JsonConvert.DeserializeObject <HD>(sr.ReadToEnd());
            }

            Diretorio diretorio = new Diretorio
            {
                NomeDiretorio = nomeDir
            };

            if (context.Length == 1)
            {
                hdManipulado.Diretorio.Add(diretorio);
                hdManipulado.StatusHd.NumeroPasta++;
            }
            else if (context.Length == 2)
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    if (item.NomeDiretorio.Equals(context[1]))
                    {
                        item.SubPasta.Add(diretorio);
                        hdManipulado.StatusHd.NumeroPasta++;
                    }
                }
            }
            else
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item1 in item.SubPasta)
                    {
                        if (item1.NomeDiretorio.Equals(context.Last()))
                        {
                            item1.SubPasta.Add(diretorio);
                            hdManipulado.StatusHd.NumeroPasta++;
                        }
                    }
                }
            }

            File.Delete(hd + ".txt");
            CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
        }
Ejemplo n.º 3
0
        public static void RemoveDiretorio(string contexto, string nomeDir)
        {
            var context = contexto.Replace(">", "").Split('/').ToList();

            if (context.Last().Equals(""))
            {
                _ = context.Remove(context.Last());
            }

            string hd  = context[0];
            var    arq = File.Open(hd + ".txt", FileMode.Open);
            HD     hdManipulado;

            using (StreamReader sr = new StreamReader(arq))
            {
                hdManipulado = JsonConvert.DeserializeObject <HD>(sr.ReadToEnd());
            }

            Diretorio diretorio = new Diretorio();
            var       achou     = false;

            if (context.Count == 1)
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    if (item.NomeDiretorio.Equals(nomeDir))
                    {
                        diretorio = item;
                        achou     = true;
                    }
                }

                if (achou)
                {
                    hdManipulado.Diretorio.Remove(diretorio);
                    hdManipulado.StatusHd.NumeroPasta--;
                    File.Delete(hd + ".txt");

                    CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                }
            }
            else if (context.Count == 2)
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item2 in item.SubPasta)
                    {
                        if (item2.NomeDiretorio.Equals(nomeDir))
                        {
                            diretorio = item;

                            item.SubPasta.Remove(item2);
                            hdManipulado.StatusHd.NumeroPasta--;
                            File.Delete(hd + ".txt");
                            CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                        }
                    }
                }
            }
            else
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item1 in item.SubPasta)
                    {
                        foreach (var item2 in item1.SubPasta)
                        {
                            if (item2.NomeDiretorio.Equals(nomeDir))
                            {
                                item1.SubPasta.Remove(item2);
                                hdManipulado.StatusHd.NumeroPasta--;
                                File.Delete(hd + ".txt");
                                CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 4
0
        public static void CriaArquivo(string contexto, string nomeArq, string valorArq)
        {
            var    context = contexto.Split('/');
            string hd      = context[0];

            var arq = File.Open(hd + ".txt", FileMode.Open);
            HD  hdManipulado;

            using (StreamReader sr = new StreamReader(arq))
            {
                hdManipulado = JsonConvert.DeserializeObject <HD>(sr.ReadToEnd());
            }

            Arquivo arquivo = new Arquivo
            {
                NomeArquivo  = nomeArq,
                ValorArquivo = valorArq
            };

            if (hdManipulado.Arquivos == null)
            {
                hdManipulado.Arquivos = new List <Arquivo>();
            }

            if (context.Length == 1)
            {
                hdManipulado.Arquivos.Add(arquivo);
                hdManipulado.StatusHd.NumeroArquivos++;
            }
            else if (context.Length == 2)
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    if (item.NomeDiretorio.Equals(context[1]))
                    {
                        item.Arquivos.Add(arquivo);
                        hdManipulado.StatusHd.NumeroArquivos++;
                    }
                }
            }
            else if (context.Length == 3)
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item1 in item.SubPasta)
                    {
                        if (item1.NomeDiretorio.Equals(context[2]))
                        {
                            item1.Arquivos.Add(arquivo);
                            hdManipulado.StatusHd.NumeroArquivos++;
                        }
                    }
                }
            }
            else
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item1 in item.SubPasta)
                    {
                        foreach (var item2 in item1.SubPasta)
                        {
                            if (item2.NomeDiretorio.Equals(context[3]))
                            {
                                item2.Arquivos.Add(arquivo);
                                hdManipulado.StatusHd.NumeroArquivos++;
                            }
                        }
                    }
                }
            }
            File.Delete(hd + ".txt");
            CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
        }
Ejemplo n.º 5
0
        public static void Deleta(string contexto, string nome)
        {
            try
            {
                var    context = contexto.Split('/');
                string hd      = context[0];
                var    arq     = File.Open(hd + ".txt", FileMode.Open);
                HD     hdManipulado;

                using (StreamReader sr = new StreamReader(arq))
                {
                    hdManipulado = JsonConvert.DeserializeObject <HD>(sr.ReadToEnd());
                }

                Arquivo arquivo = new Arquivo();

                if (context.Length == 1)
                {
                    foreach (var item in hdManipulado.Arquivos)
                    {
                        if (item.NomeArquivo.Equals(nome))
                        {
                            arquivo = item;

                            hdManipulado.Arquivos.Remove(arquivo);
                            hdManipulado.StatusHd.NumeroArquivos--;
                            File.Delete(hd + ".txt");

                            CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                        }
                    }
                }
                else if (context.Length == 2)
                {
                    foreach (var item in hdManipulado.Diretorio)
                    {
                        foreach (var item1 in item.Arquivos)
                        {
                            if (item1.NomeArquivo.Equals(nome))
                            {
                                arquivo = item1;
                                item.Arquivos.Remove(item1);
                                hdManipulado.StatusHd.NumeroArquivos--;
                                File.Delete(hd + ".txt");
                                CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                            }
                        }
                    }
                }
                else if (context.Length == 3)
                {
                    foreach (var item in hdManipulado.Diretorio)
                    {
                        foreach (var item1 in item.SubPasta)
                        {
                            foreach (var item2 in item1.Arquivos)
                            {
                                if (item2.NomeArquivo.Equals(nome))
                                {
                                    arquivo = item2;
                                    hdManipulado.StatusHd.NumeroArquivos--;
                                    item1.Arquivos.Remove(item2);
                                    File.Delete(hd + ".txt");
                                    CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                                }
                            }
                        }
                    }
                }
                else
                {
                    foreach (var item in hdManipulado.Diretorio)
                    {
                        foreach (var item1 in item.SubPasta)
                        {
                            foreach (var item2 in item1.SubPasta)
                            {
                                foreach (var item3 in item2.Arquivos)
                                {
                                    if (item3.NomeArquivo.Equals(nome))
                                    {
                                        hdManipulado.StatusHd.NumeroArquivos--;
                                        item2.Arquivos.Remove(item3);
                                        File.Delete(hd + ".txt");
                                        CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception)
            {
                //Console.WriteLine("Arquivo não encontrado");
            }
        }
Ejemplo n.º 6
0
        public static void Movimenta(string contexto, string moveFrom, string movido)
        {
            var context = contexto.Replace(">", "").Split('/').ToList();

            if (context.Last().Equals(""))
            {
                _ = context.Remove(context.Last());
            }
            string hd = context[0];

            var copyTo = movido.Replace(">", "").Split('/').ToList();

            if (copyTo.Last().Equals(""))
            {
                _ = copyTo.Remove(copyTo.Last());
            }

            var arq = File.Open(hd + ".txt", FileMode.Open);
            HD  hdManipulado;

            using (StreamReader sr = new StreamReader(arq))
            {
                hdManipulado = JsonConvert.DeserializeObject <HD>(sr.ReadToEnd());
            }

            if (context.Count == 1)
            {
                var arquivo = hdManipulado.Arquivos.Find(x => x.NomeArquivo.Equals(moveFrom));
                hdManipulado.Arquivos.Remove(arquivo);

                var pasta = hdManipulado.Diretorio.Find(x => x.NomeDiretorio.Equals(moveFrom));
                hdManipulado.Diretorio.Remove(pasta);

                if (arquivo != null)
                {
                    for (int i = 0; i < hdManipulado.Diretorio.Count; i++)
                    {
                        if (copyTo.Count > 1)
                        {
                            for (int j = 0; j < hdManipulado.Diretorio[i].SubPasta.Count; j++)
                            {
                                var xx = hdManipulado.Diretorio[i].SubPasta.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                                if (xx > -1)
                                {
                                    hdManipulado.Diretorio[i].SubPasta[xx].Arquivos.Add(arquivo);
                                }
                            }
                        }
                        else
                        {
                            var xx = hdManipulado.Diretorio.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                            if (xx > -1)
                            {
                                hdManipulado.Diretorio[i].Arquivos.Add(arquivo);
                            }
                        }
                    }
                }
                else if (pasta != null)
                {
                    //for (int i = 0; i < hdManipulado.Diretorio.Count; i++)
                    //{
                    //    if (copyTo.Count > 1)
                    //    {
                    //        for (int j = 0; j < hdManipulado.Diretorio[i].SubPasta.Count; j++)
                    //        {

                    //            var xx = hdManipulado.Diretorio[i].SubPasta.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                    //            if (xx > -1)
                    //                hdManipulado.Diretorio[i].SubPasta[xx].SubPasta.Add(pasta);
                    //        }
                    //    }
                    //    else
                    //    {
                    //        var xx = hdManipulado.Diretorio.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                    //        if (xx > -1)
                    //            hdManipulado.Diretorio[i].SubPasta.Add(pasta);
                    //    }
                    //}
                }
            }
            else if (context.Count == 2)
            {
                var arquivo = new Arquivo(); // = hdManipulado.Arquivos.Find(x => x.NomeArquivo.Equals(moveFrom));

                var pasta = new Diretorio(); // hdManipulado.Diretorio.Find(x => x.NomeDiretorio.Equals(moveFrom));

                foreach (var item in hdManipulado.Diretorio)
                {
                    arquivo = item.Arquivos.Find(x => x.NomeArquivo.Equals(moveFrom));
                    item.Arquivos.Remove(arquivo);
                    pasta = item.SubPasta.Find(x => x.NomeDiretorio.Equals(moveFrom));
                    item.SubPasta.Remove(pasta);
                }

                if (arquivo != null)
                {
                    for (int i = 0; i < hdManipulado.Diretorio.Count; i++)
                    {
                        if (copyTo.Count >= 1)
                        {
                            for (int j = 0; j < hdManipulado.Diretorio[i].SubPasta.Count; j++)
                            {
                                var xx = hdManipulado.Diretorio[i].SubPasta.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                                if (xx > -1)
                                {
                                    hdManipulado.Diretorio[i].SubPasta[xx].Arquivos.Add(arquivo);
                                }
                            }
                        }
                        else
                        {
                            var xx = hdManipulado.Diretorio.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                            if (xx > -1)
                            {
                                hdManipulado.Diretorio[i].Arquivos.Add(arquivo);
                            }
                        }
                    }
                }
                else if (pasta != null)
                {
                }
            }
            else if (context.Count == 3)
            {
                var arquivo = new Arquivo(); // = hdManipulado.Arquivos.Find(x => x.NomeArquivo.Equals(moveFrom));

                var pasta = new Diretorio(); // hdManipulado.Diretorio.Find(x => x.NomeDiretorio.Equals(moveFrom));

                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item2 in item.SubPasta)
                    {
                        arquivo = item2.Arquivos.Find(x => x.NomeArquivo.Equals(moveFrom));
                        item2.Arquivos.Remove(arquivo);
                        pasta = item2.SubPasta.Find(x => x.NomeDiretorio.Equals(moveFrom));
                        item2.SubPasta.Remove(pasta);
                    }
                }

                if (arquivo != null)
                {
                    for (int i = 0; i < hdManipulado.Diretorio.Count; i++)
                    {
                        if (copyTo.Count > 1)
                        {
                            for (int j = 0; j < hdManipulado.Diretorio[i].SubPasta.Count; j++)
                            {
                                var xx = hdManipulado.Diretorio[i].SubPasta.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                                if (xx > -1)
                                {
                                    hdManipulado.Diretorio[i].SubPasta[xx].Arquivos.Add(arquivo);
                                }
                            }
                        }
                        else
                        {
                            var xx = hdManipulado.Diretorio.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                            if (xx > -1)
                            {
                                hdManipulado.Diretorio[i].Arquivos.Add(arquivo);
                            }
                        }
                    }
                }
                else if (pasta != null)
                {
                }
            }
            else
            {
                var arquivo = new Arquivo(); // = hdManipulado.Arquivos.Find(x => x.NomeArquivo.Equals(moveFrom));

                var pasta = new Diretorio(); // hdManipulado.Diretorio.Find(x => x.NomeDiretorio.Equals(moveFrom));

                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item2 in item.SubPasta)
                    {
                        foreach (var item3 in item2.SubPasta)
                        {
                            arquivo = item3.Arquivos.Find(x => x.NomeArquivo.Equals(moveFrom));
                            item3.Arquivos.Remove(arquivo);
                            pasta = item3.SubPasta.Find(x => x.NomeDiretorio.Equals(moveFrom));
                            item3.SubPasta.Remove(pasta);

                            if (pasta != null || arquivo != null)
                            {
                                break;
                            }
                        }
                    }
                }

                if (arquivo != null)
                {
                    for (int i = 0; i < hdManipulado.Diretorio.Count; i++)
                    {
                        if (copyTo.Count > 1)
                        {
                            for (int j = 0; j < hdManipulado.Diretorio[i].SubPasta.Count; j++)
                            {
                                var xx = hdManipulado.Diretorio[i].SubPasta.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                                if (xx > -1)
                                {
                                    hdManipulado.Diretorio[i].SubPasta[xx].Arquivos.Add(arquivo);
                                }
                            }
                        }
                        else
                        {
                            var xx = hdManipulado.Diretorio.FindIndex(x => x.NomeDiretorio.Equals(copyTo.Last()));

                            if (xx > -1)
                            {
                                hdManipulado.Diretorio[i].Arquivos.Add(arquivo);
                            }
                        }
                    }
                }
                else if (pasta != null)
                {
                }
            }


            File.Delete(hd + ".txt");
            CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
        }
Ejemplo n.º 7
0
        public static void RenomeiaArquivo(string contexto, string nomeArq, string nomeArqNovo)
        {
            var context = contexto.Replace(">", "").Split('/').ToList();

            if (context.Last().Equals(""))
            {
                _ = context.Remove(context.Last());
            }
            string hd = context[0];

            var arq = File.Open(hd + ".txt", FileMode.Open);
            HD  hdManipulado;

            using (StreamReader sr = new StreamReader(arq))
            {
                hdManipulado = JsonConvert.DeserializeObject <HD>(sr.ReadToEnd());
            }

            var achou = false;

            if (context.Count == 1)
            {
                foreach (var item in hdManipulado.Arquivos)
                {
                    if (item.NomeArquivo.Equals(nomeArq))
                    {
                        item.NomeArquivo = nomeArqNovo;
                        achou            = true;
                    }
                }

                if (achou)
                {
                    File.Delete(hd + ".txt");
                    CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                }
            }
            else if (context.Count == 2)
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item1 in item.Arquivos)
                    {
                        if (item1.NomeArquivo.Equals(nomeArq))
                        {
                            item1.NomeArquivo = nomeArqNovo;
                            achou             = true;
                        }
                    }
                }

                if (achou)
                {
                    File.Delete(hd + ".txt");
                    CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                }
            }
            else if (context.Count == 3)
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item1 in item.SubPasta)
                    {
                        foreach (var item2 in item1.Arquivos)
                        {
                            if (item2.NomeArquivo.Equals(nomeArq))
                            {
                                item2.NomeArquivo = nomeArqNovo;
                                achou             = true;
                            }
                        }
                    }
                }

                if (achou)
                {
                    File.Delete(hd + ".txt");
                    CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                }
            }
            else
            {
                foreach (var item in hdManipulado.Diretorio)
                {
                    foreach (var item1 in item.SubPasta)
                    {
                        foreach (var item2 in item1.SubPasta)
                        {
                            foreach (var item3 in item2.Arquivos)
                            {
                                if (item3.NomeArquivo.Equals(nomeArq))
                                {
                                    item3.NomeArquivo = nomeArqNovo;
                                    achou             = true;
                                }
                            }
                        }
                    }
                }

                if (achou)
                {
                    File.Delete(hd + ".txt");
                    CreateHd.CriaHdComJson(hdManipulado, hd, hdManipulado.Tamanho);
                }
            }
        }