示例#1
0
    public static void Main()
    {
        tipoFicha[] fichas = new tipoFicha[1000];
        int         opcion; // La opcion del menu que elija el usuario

        do
        {
            // Menu principal, repetitivo
            MostrarMenu();
            opcion = Convert.ToInt32(Console.ReadLine());
            // Hacemos una cosa u otra según la opción escogida
            switch (opcion)
            {
            case 1:     // Añadir un dato nuevo
                AnadirDatoFichero(numeroFichas, fichas);
                break;

            case 2:     // Mostrar todos
                MostrarDatos(numeroFichas, fichas);
                break;

            case 3:     // Mostrar según el tamaño
                MostrarDatosSegunTam(numeroFichas, fichas);
                break;

            case 4:     // Ver todos los datos (pocos) de un fichero
                VerDatosFichero(numeroFichas, fichas);
                break;

            case 5:     // Salir: avisamos de que salimos */
                Console.WriteLine("Fin del programa");
                Guardar(numeroFichas, fichas);
                break;

            default:     // Otra opcion: no válida
                Console.WriteLine("Opción desconocida!");
                break;
            }
        } while (opcion != 5); // Si la opcion es 5, terminamos
    }
示例#2
0
    public static void Main()
    {
        tipoFicha[] fichas /* Los datos en si */ = new tipoFicha[1000];
        int numeroFichas = 0; /* Número de fichas que ya tenemos */
        int i; /* Para bucles */ int opcion; /* La opcion del menu que elija el usuario */
        string textoBuscar; /* Para cuando preguntemos al usuario */
        long tamanyoBuscar; /* Para buscar por tamaño */
        do
        {
            /* Menu principal */
            Console.WriteLine();
            Console.WriteLine("Escoja una opción:");
            Console.WriteLine("1.- Añadir datos de un nuevo fichero");
            Console.WriteLine("2.- Mostrar los nombres de todos los ficheros");
            Console.WriteLine("3.- Mostrar ficheros que sean de mas de un cierto tamaño");
            Console.WriteLine("4.- Ver datos de un fichero");
            Console.WriteLine("5.- Buscar un fragmento");
            Console.WriteLine("6.- Borrar un dato");
            Console.WriteLine("0.- Salir");
            opcion = Convert.ToInt32(Console.ReadLine());

            /* Hacemos una cosa u otra según la opción escogida */
            switch (opcion)
            {
                case 1: /* Añadir un dato nuevo */
                    if (numeroFichas < 1000)
                {
                    /* Si queda hueco */
                        string tempnombre = "";
                    Console.WriteLine("Introduce el nombre del fichero: ");
                    tempnombre = Console.ReadLine();
                    while (tempnombre == "")
                    {
                        Console.WriteLine("Cadena demasiado corta, introduzcala de nuevo: ");
                        tempnombre = Console.ReadLine();
                    }

                    fichas[numeroFichas].nombreFich = tempnombre;
                    int temptamanyo;
                    Console.WriteLine("Introduce el tamaño en KB: ");
                    while ((!int.TryParse(Console.ReadLine(), out temptamanyo) || temptamanyo < 0))
                    {
                        Console.WriteLine("El tamaño no puede ser negativo: ");
                    }

                    fichas[numeroFichas].tamanyo = temptamanyo;
                    /* Y ya tenemos una ficha más */
                        numeroFichas++;
                }
                else /* Si no hay hueco para más fichas, avisamos */
                        Console.WriteLine("Máximo de fichas alcanzado (1000)!");
                break;

                case 2: /* Mostrar todos */
                    for (i = 0; i < numeroFichas; i++)
                    Console.WriteLine("Nombre: {0}; Tamaño: {1} KB", fichas[i].nombreFich, fichas[i].tamanyo);
                break;

                case 3: /* Mostrar según el tamaño */
                    Console.WriteLine("¿A partir de que tamaño quieres que te muestre?");
                tamanyoBuscar = Convert.ToInt64(Console.ReadLine());
                bool flag = false;
                for (i = 0; i < numeroFichas; i++) {
                    if (fichas[i].tamanyo >= tamanyoBuscar) {
                        Console.WriteLine("Nombre: {0}; Tamaño: {1} KB", fichas[i].nombreFich, fichas[i].tamanyo);
                        flag = true;
                    }
                }

                if (flag == false)
                    Console.WriteLine("No se encontró ningún fichero con las características especificadas.");
                break;

                case 4: /* Ver todos los datos (pocos) de un fichero */
                    Console.WriteLine("¿De qué fichero quieres ver todos los datos?");
                textoBuscar = Console.ReadLine();
                for (i = 0; i < numeroFichas; i++)
                    if (fichas[i].nombreFich == textoBuscar) Console.WriteLine("Nombre: {0}; Tamaño: {1} KB", fichas[i].nombreFich, fichas[i].tamanyo);
                break;

                case 5: // buscar un fragmento
                    string textobuscar = "";
                string nombremin = "";
                Console.WriteLine("escriba un fragmento del texto a buscar: ");
                textobuscar = Console.ReadLine();
                textobuscar = textobuscar.ToLower();
                for (i = 0; i < numeroFichas; i++)
                {
                    nombremin = fichas[i].nombreFich.ToLower();
                    if (nombremin.Contains(textobuscar))
                        Console.WriteLine("Nombre: {0}; Tamaño: {1} KB", fichas[i].nombreFich, fichas[i].tamanyo);
                }

                break;
                case 6: //borrar un dato
                    string datoborrar = "";
                int indice = -1;
                Console.WriteLine("escriba el dato a borrar: ");
                datoborrar = Console.ReadLine();
                for (i = 0; i < numeroFichas; i++)
                {
                    if (fichas[i].nombreFich == datoborrar)
                    {
                        indice = i;
                        i = numeroFichas;
                    }
                }

                if (indice >= 0)
                {
                    for (i = indice + 1; i < numeroFichas; i++)
                    {
                        fichas[i-1] = fichas[i];
                    }
                    numeroFichas--;
                    }
                    break;
                case 0: /* Salir: avisamos de que salimos */
                    Console.WriteLine("Fin del programa");
                    break;
                default: /* Otra opcion: no válida */
                    Console.WriteLine("Opción desconocida!");
                    break;
            }
        } while (opcion != 0); /* Si la opcion es 5, terminamos */
    }
示例#3
0
    public static void Main()
    {
        tipoFicha[] fichas /* Los datos en si */ = new tipoFicha[1000];
        int numeroFichas = 0; /* Número de fichas que ya tenemos */
        int i; /* Para bucles */ int opcion; /* La opcion del menu que elija el usuario */
        string textoBuscar; /* Para cuando preguntemos al usuario */
        long tamanyoBuscar; /* Para buscar por tamaño */
        do
        {
            /* Menu principal */
            Console.WriteLine();
            Console.WriteLine("Escoja una opción:");
            Console.WriteLine("1.- Añadir datos de un nuevo fichero");
            Console.WriteLine("2.- Mostrar los nombres de todos los ficheros");
            Console.WriteLine("3.- Mostrar ficheros que sean de mas de un cierto tamaño");
            Console.WriteLine("4.- Ver datos de un fichero");
            Console.WriteLine("5.- Salir");
            opcion = Convert.ToInt32(Console.ReadLine());

            /* Hacemos una cosa u otra según la opción escogida */
            switch (opcion)
            {
                case 1: /* Añadir un dato nuevo */
                    if (numeroFichas < 1000)
                    {
                        /* Si queda hueco */
                        Console.WriteLine("Introduce el nombre del fichero: ");
                        fichas[numeroFichas].nombreFich = Console.ReadLine();
                        Console.WriteLine("Introduce el tamaño en KB: ");
                        fichas[numeroFichas].tamanyo = Convert.ToInt32(Console.ReadLine());
                        /* Y ya tenemos una ficha más */
                        numeroFichas++;
                    }
                    else /* Si no hay hueco para más fichas, avisamos */
                        Console.WriteLine("Máximo de fichas alcanzado (1000)!");
                    break;

                case 2: /* Mostrar todos */
                    for (i = 0; i < numeroFichas; i++)
                        Console.WriteLine("Nombre: {0}; Tamaño: {1} KB", fichas[i].nombreFich, fichas[i].tamanyo);
                    break;

                case 3: /* Mostrar según el tamaño */
                    Console.WriteLine("¿A partir de que tamaño quieres que te muestre?");
                    tamanyoBuscar = Convert.ToInt64(Console.ReadLine());
                    for (i = 0; i < numeroFichas; i++)
                        if (fichas[i].tamanyo >= tamanyoBuscar)
                            Console.WriteLine("Nombre: {0}; Tamaño: {1} KB", fichas[i].nombreFich, fichas[i].tamanyo);
                    break;

                case 4: /* Ver todos los datos (pocos) de un fichero */
                    Console.WriteLine("¿De qué fichero quieres ver todos los datos?");
                    textoBuscar = Console.ReadLine();
                    for (i = 0; i < numeroFichas; i++)
                        if (fichas[i].nombreFich == textoBuscar) Console.WriteLine("Nombre: {0}; Tamaño: {1} KB", fichas[i].nombreFich, fichas[i].tamanyo);
                    break;

                case 5: /* Salir: avisamos de que salimos */
                    Console.WriteLine("Fin del programa");
                    break;
                default: /* Otra opcion: no válida */
                    Console.WriteLine("Opción desconocida!");
                    break;
            }
        } while (opcion != 5); /* Si la opcion es 5, terminamos */
    }
示例#4
0
        public static void Main()
        {
            tipoFicha[] fichas /* Los datos en si */ = new tipoFicha[1000];
            int         numeroFichas = 0; /* Número de fichas que ya tenemos */
            int         i;                /* Para bucles */
            int         opcion;           /* La opcion del menu que elija el usuario */
            string      textoBuscar;      /* Para cuando preguntemos al usuario */
            long        tamanyoBuscar;    /* Para buscar por tamaño */

            do
            {
                /* Menu principal */
                Console.WriteLine();
                Console.WriteLine("Escoja una opción:");
                Console.WriteLine("1.- Añadir datos de un nuevo fichero");
                Console.WriteLine("2.- Mostrar los nombres de todos los ficheros");
                Console.WriteLine("3.- Mostrar ficheros que sean de mas de un cierto tamaño");
                Console.WriteLine("4.- Ver datos de un fichero");
                Console.WriteLine("5.- Salir");
                opcion = Convert.ToInt32(Console.ReadLine());

                /* Hacemos una cosa u otra según la opción escogida */
                switch (opcion)
                {
                case 1:
                    /* Añadir un dato nuevo */
                    if (numeroFichas < 1000)       /* Si queda hueco */
                    {
                        Console.WriteLine("Introduce el nombre del fichero: ");
                        fichas[numeroFichas].nombreFich = Console.ReadLine();
                        Console.WriteLine("Introduce el tamaño en KB: ");
                        fichas[numeroFichas].tamanyo = Convert.ToInt32(Console.ReadLine());
                        /* Y ya tenemos una ficha más */
                        numeroFichas++;
                    }
                    else       /* Si no hay hueco para más fichas, avisamos */
                    {
                        Console.WriteLine("Máximo de fichas alcanzado (1000)!");
                    }
                    break;

                case 2:
                    /* Mostrar todos */
                    for (i = 0; i < numeroFichas; i++)
                    {
                        Console.WriteLine("Nombre: {0}; Tamaño: {1} KB",
                                          fichas[i].nombreFich, fichas[i].tamanyo);
                    }
                    break;

                case 3:
                    /* Mostrar según el tamaño */
                    Console.WriteLine("¿A partir de que tamaño quieres que te muestre?");
                    tamanyoBuscar = Convert.ToInt64(Console.ReadLine());
                    for (i = 0; i < numeroFichas; i++)
                    {
                        if (fichas[i].tamanyo >= tamanyoBuscar)
                        {
                            Console.WriteLine("Nombre: {0}; Tamaño: {1} KB",
                                              fichas[i].nombreFich, fichas[i].tamanyo);
                        }
                    }
                    break;

                case 4:
                    /* Ver todos los datos (pocos) de un fichero */
                    Console.WriteLine("¿De qué fichero quieres ver todos los datos?");
                    textoBuscar = Console.ReadLine();
                    for (i = 0; i < numeroFichas; i++)
                    {
                        if (fichas[i].nombreFich == textoBuscar)
                        {
                            Console.WriteLine("Nombre: {0}; Tamaño: {1} KB",
                                              fichas[i].nombreFich, fichas[i].tamanyo);
                        }
                    }
                    break;

                case 5:
                    /* Salir: avisamos de que salimos */
                    Console.WriteLine("Fin del programa");
                    break;

                default:
                    /* Otra opcion: no válida */
                    Console.WriteLine("Opción desconocida!");
                    break;
                }
            } while (opcion != 5); /* Si la opcion es 5, terminamos */
        }
示例#5
0
        static void Main(string[] args)
        {
            #endregion
            #region variables
            tipoFicha[] fichas       = new tipoFicha[1];
            int         numeroFichas = 0;
            int         i;
            int         opcion;
            string      textoBuscar;
            #endregion
            #region menu
            do
            {
                Console.WriteLine();
                Console.WriteLine("Escoja una opción:");
                Console.WriteLine("1.- Añadir una ficha nueva");
                Console.WriteLine("2.- Ver todas las fichas");
                Console.WriteLine("3.- Buscar el nombre de la ficha");
                Console.WriteLine("4.- Salir");

                opcion = Convert.ToInt32(Console.ReadLine());
                #endregion
                #region switch
                switch (opcion)
                {
                case 1:
                    if (numeroFichas < fichas.Length)
                    {
                        Console.WriteLine("Introduce el nombre del fichero: ");
                        fichas[numeroFichas].nombreFich = Console.ReadLine();
                        Console.WriteLine("Introduce el ancho de píxeles: ");
                        fichas[numeroFichas].anpix = Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine("Introduce el alto de píxeles: ");
                        fichas[numeroFichas].alpix = Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine("Introduce el tamaño en KB: ");
                        fichas[numeroFichas].tm = float.Parse(Console.ReadLine());


                        numeroFichas++;
                    }
                    else
                    {
                        Console.WriteLine("Máximo de fichas alcanzado (1)!");
                    }
                    break;

                case 2:
                    for (i = 0; i < numeroFichas; i++)
                    {
                        Console.WriteLine("Nombre: {0}; Tamaño: {1} Kb; Ancho: {2} X Alto: {3}",
                                          fichas[i].nombreFich, fichas[i].tm, fichas[i].anpix, fichas[i].alpix);
                    }
                    break;

                case 3:
                    Console.WriteLine("¿De qué fichero quieres ver todos los datos?");
                    textoBuscar = Console.ReadLine();
                    for (i = 0; i < numeroFichas; i++)
                    {
                        if (fichas[i].nombreFich == textoBuscar)
                        {
                            Console.WriteLine("Nombre: {0}; Tamaño: {1} Kb; Ancho: {2}; Alto: {3}",
                                              fichas[i].nombreFich, fichas[i].tm, fichas[i].anpix, fichas[i].alpix);
                        }
                    }
                    break;

                case 4:
                    Console.WriteLine("Fin del programa");
                    break;

                default:
                    Console.WriteLine("Opción desconocida!");
                    break;
                }
            } while (opcion != 4);
            #endregion
            #region final-programa
        }
示例#6
0
    public static void Main()
    {
        tipoFicha[] fichas /* Los datos en si */ = new tipoFicha[1000];
        int numeroFichas = 0; /* Número de fichas que ya tenemos */
        int i; /* Para bucles */ int opcion; /* La opcion del menu que elija el usuario */
        string textoBuscar; /* Para cuando preguntemos al usuario */
        long tamanyoBuscar; /* Para buscar por tamaño */
        if (!File.Exists("prueba.txt"))
        {
            File.CreateText("prueba.txt");
        }
        //File.CreateText("prueba2.txt");
        StreamWriter fichero;
        string linea = "";
        StreamReader fichero_origen;

        do
        {
            /* Menu principal */
            Console.WriteLine();
            Console.WriteLine("Escoja una opción:");
            Console.WriteLine("1.- Añadir datos de un nuevo fichero");
            Console.WriteLine("2.- Mostrar los nombres de todos los ficheros");
            Console.WriteLine("3.- Mostrar ficheros que sean de mas de un cierto tamaño");
            Console.WriteLine("4.- Ver datos de un fichero");
            Console.WriteLine("5.- buscar un fragmento de un fichero");
            Console.WriteLine("6.- borrar un dato");
            Console.WriteLine("7.- modificar un dato por su indice");
            Console.WriteLine("0.- Salir");
            opcion = Convert.ToInt32(Console.ReadLine());

            /* Hacemos una cosa u otra según la opción escogida */
            switch (opcion)
            {
                case 1: /* Añadir un dato nuevo */

                    fichero_origen = File.OpenText("prueba.txt");
                    numeroFichas = 0;
                    do
                    {
                        linea = fichero_origen.ReadLine();
                        if (linea != null)
                        {
                            numeroFichas++;
                        }

                    } while (linea != null);
                    fichero_origen.Close();

                    if (numeroFichas < 1000)
                    {
                        /* Si queda hueco */
                        string tempnombre = "";
                        Console.WriteLine("Introduce el nombre del fichero: ");
                        do
                        {
                            tempnombre = Console.ReadLine();
                            if(tempnombre == "")
                            Console.WriteLine("Cadena demasiado corta, introduzcala de nuevo: ");
                        } while (tempnombre == "");

                        int temptamanyo;
                        Console.WriteLine("Introduce el tamaño en KB: ");
                        while ((!int.TryParse(Console.ReadLine(), out temptamanyo) || temptamanyo < 0 || temptamanyo > 8000000000))
                        {
                            Console.WriteLine("El tamaño no puede ser negativo o mayor de 8000000000: ");
                        }

                        fichero = File.AppendText("prueba.txt");
                        fichero.WriteLine("\n"+tempnombre + ";" + temptamanyo);
                        fichero.Close();
                        /* Y ya tenemos una ficha más */
                    }
                    else /* Si no hay hueco para más fichas, avisamos */
                        Console.WriteLine("Máximo de fichas alcanzado (1000)!");
                    break;

                case 2: /* Mostrar todos */
                    fichero_origen = File.OpenText("prueba.txt");
                    do
                    {
                        linea = fichero_origen.ReadLine();
                        if (linea != null && linea != "")
                        {
                            Console.WriteLine("Nombre: {0} Tamaño: {1} KB", linea.Split(';')[0], linea.Split(';')[1]);
                        }

                    } while (linea != null);
                    fichero_origen.Close();
                    break;

                case 3: /* Mostrar según el tamaño */
                    fichero_origen = File.OpenText("prueba.txt");
                    Console.WriteLine("¿A partir de que tamaño quieres que te muestre?");
                    tamanyoBuscar = Convert.ToInt64(Console.ReadLine());

                    do
                    {
                        linea = fichero_origen.ReadLine();
                        if (linea != null && linea != "")
                        {
                            if (Convert.ToInt32(linea.Split(';')[1]) >= tamanyoBuscar)
                            Console.WriteLine("Nombre: {0} Tamaño: {1} KB", linea.Split(';')[0], linea.Split(';')[1]);
                        }

                    } while (linea != null);
                    fichero_origen.Close();
                    break;

                case 4: /* Ver todos los datos (pocos) de un fichero */

                    fichero_origen = File.OpenText("prueba.txt");
                    Console.WriteLine("¿De qué fichero quieres ver todos los datos?");
                    textoBuscar = Console.ReadLine();
                    do
                    {
                        linea = fichero_origen.ReadLine();
                        if (linea != null && linea != "")
                        {
                            if (textoBuscar == linea.Split(';')[0])
                            Console.WriteLine("Nombre: {0} Tamaño: {1} KB", linea.Split(';')[0], linea.Split(';')[1]);
                        }

                    } while (linea != null);
                    fichero_origen.Close();
                    break;

                case 5: // buscar un fragmento

                    fichero_origen = File.OpenText("prueba.txt");
                    Console.WriteLine("¿Por que fragmento deseas buscar?");
                    textoBuscar = Console.ReadLine().ToLower();
                    do
                    {
                        linea = fichero_origen.ReadLine();
                        if (linea != null && linea != "")
                        {
                            if (linea.Split(';')[0].Contains(textoBuscar))
                            Console.WriteLine("Nombre: {0} Tamaño: {1} KB", linea.Split(';')[0], linea.Split(';')[1]);
                        }
                    } while (linea != null);
                    fichero_origen.Close();
                    break;

                case 6: //borrar un dato

                    fichero_origen = File.OpenText("prueba.txt");
                    List<string> lista = File.ReadAllLines("prueba.txt").ToList();
                    fichero_origen.Close();
                    Console.WriteLine("¿que texto deseas borrar?");
                    textoBuscar = Console.ReadLine().ToLower();

                    fichero = File.CreateText("prueba.txt");

                    foreach (string dato in lista)
                    {
                        if (dato.Split(';')[0] != textoBuscar)
                            fichero.WriteLine(dato);
                    }

                    fichero.Close();

                    break;

                case 7: // modificar un dato por su indice

                    int indice = 0;
                    string nombreaux = "";
                    Console.WriteLine("Que indice desea borrar?");
                    int.TryParse(Console.ReadLine(), out indice);

                    fichero_origen = File.OpenText("prueba.txt");
                    List<string> lista2 = File.ReadAllLines("prueba.txt").ToList();
                    fichero_origen.Close();

                    if (indice < lista2.Count)
                    {
                        fichero = File.CreateText("prueba.txt");
                        for (int k = 0; k < lista2.Count; k++)
                        {
                            if (indice == k + 1)
                            {
                                Console.WriteLine(lista2[k].Split(';')[0]);
                                Console.WriteLine("escriba el nuevo nombre:");
                                nombreaux = Console.ReadLine();
                                if (nombreaux != "")
                                {
                                    lista2[k] = nombreaux + ";" + lista2[k].Split(';')[1];
                                }
                            }

                            fichero.WriteLine(lista2[k]);
                        }

                        fichero.Close();
                    }
                    else
                        Console.WriteLine("el indice no existe");

                    break;
                case 0: /* Salir: avisamos de que salimos */
                    Console.WriteLine("Fin del programa");
                    break;
                default: /* Otra opcion: no válida */
                    Console.WriteLine("Opción desconocida!");
                    break;
            }
        } while (opcion != 0); /* Si la opcion es 5, terminamos */
    }