En ocasiones, necesitamos que la información con la que trabajamos en una aplicación no se pierda después de la ejecución, es decir, necesitamos que la información sea no volátil, para ello, una de las opciones para tratar los datos son los ficheros.
Indica se la siguiente frase es correcta:
Los ficheros son una secuencia de bits que se almacenan en un dispositivo de almacenamiento secundario. true false. Los ficheros se pueden clasificar según su acceso en secuenciales, aleatorios o secuenciales indexados.
Relaciona las siguientes definiciones de tipos de ficheros con sus características correspondientes: los registros se van almacenando en posiciones consecutivas, de forma que cada vez que queremos acceder a un dato, tendremos que empezar por el principio del fichero los registros están organizados, por lo que podemos leer o escribir en cualquier orden a través de su posición
los registros poseen un campo clave para ser identificados
. Indica cuál de las siguientes sentencias son correctas: Un directorio puedes contener ficheros y otros directorios. Una ruta absoluta indica el camino de directorio desde la posición
actual En los ficheros la información se guarda como conjuntos de 0 y 1 Los ficheros se almacenan de forma no volátil Un directorio es un conjunto de ficheros con distinta estructura. Los ficheros se pueden clasificar según su estructura en ficheros binarios y de texto.
Indica si los siguientes enunciados son propios de un fichero de texto o de un fichero binario: Se pueden abrir con un editor de texto plano, pero son incomprensibles por el usuario
Un tipo de estos ficheros sería una imagen
Uno de los fomatos en los que se guardan es .dat
Se almacenan únicamente caracteres entendibles por el usuario
Uno de los formatos en los que se guardan es .txt
. ¿En qué línea del siguiente código escribimos en el fichero de texto?
static void Main(String[] args){
int var = 0;
string line;
System.IO.StreamReader file = new System.IO.StreamReader(@"c:\fichero\test.txt");
while((line = file.Readline()) != null){
System.Console.WriteLine(line);
var++;
}
file.Close();
System.Console.WriteLine("El resultado es {0}", var);
System.Console.Readline();
} En la línea 20
En la línea 27
En la línea 25
No escribe en el fichero. Solo por pantalla
. Podemos realizar tres operaciones básicas cuando trabajamos con ficheros.
Relaciona qué hace cada una de las operaciones en los ficheros: relacionar un objeto con un fichero
trabajar con el fichero a través de un flujo
liberar el recurso
. Si tenemos el siguiente código:
using System;
using System.IO;
namespace Videotutorias{
class Program{
static void Main(string[] args){
FileStream fichero3 = new FileStream("fichero2.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite);
StreamReader lectura = new StreamReader(fichero3);
Console.WriteLine(lectura.ReadLine());
StreamWriter escritura = new StreamWriter(fichero3);
escritura.Write("HOLA");
escritura.Close();
lectura.Close();
Console.ReadKey();
fichero3.Close();
}
}
}
¿Qué nos mostrará por pantalla la línea Console.WriteLine(lectura.ReadLine());? Vacío HOLA HOLAHOLA Hola. Cuando creamos el fichero con la clase FileStream, tenemos que
escoger el modo con el que accedemos al fichero, mediante la opción
FileAccess.
Indicar cuál de los siguientes son formas de acceso a un fichero en C#: Truncate Write ReadWrite Read CreateNew append. Respecto a este código:
using System;
using System.IO;
namespace Videotutorias{
class Program{
static void Main(string[] args){
FileStream fichero3 = new FileStream("fichero2.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite);
StreamReader lectura = new StreamReader(fichero3);
Console.WriteLine(lectura.ReadLine());
StreamWriter escritura = new StreamWriter(fichero3);
escritura.Write("HOLA");
escritura.Close();
lectura.Close();
Console.ReadKey();
fichero3.Close();
}
}
}
¿Qué hay almacenado en el fichero cuando finaliza la ejecución? hola HOLA vacío holahola. ¿Sería correcto el siguiente código?
using System;
using System.IO;
namespace Videotutorias{
class Program{
static void Main(string[] args){
FileStream fichero2 = new FileStream("fichero.txt", FileMode.Open, FileAccess.Read);
StreamReader flujo2 = new StreamReader(fichero2);
string linea = "";
while ((linea = flujo2.ReadLine()) != null){
Console.WriteLine(linea);
}
flujo2.Close();
fichero2.Close();
}
}
} No. La condición While no esta bien escrita
No. Se debería acceder a él en modo escritura
No. Se debería cerrar primero el fichero y después el flujo
Sí. Es correcto
. ¿Para qué sirve System.IO? contiene tipos de datos de SQL
contiene tipos que permiten leer y escribir en los archivos y secuencias de datos
Es una función para poder trabajar la programación modular
No existe esa sentencia en C#
. ¿Cuál es la ruta absoluta si estamos trabajando en UNIX? Debe empezar por el nombre de la unidad
// \ /. ¿De qué forma buscamos en un fichero secuencial indexado?
1) Primero se busca de forma aleatoria 2) Se recorre de forma secuencial
No se puede buscar si no va acompañado de un fichero aleatorio
1)Primero busca de forma secuencial el campo clave. 2) Una vez que lo encuentra, el acceso al fichero es directo, ya que sólo tenemos que acceder a la posición indicada por el campo clave.
En un fichero indexado, no se puede buscar información. Solo sirve de almacén
. ¿Es correcta la siguiente afirmación?
En los ficheros binarios, los datos se almacenan de forma ternaria y se almacenan de la misma forma en la memoria. El dato se encripta en 0 y 1. true false. ¿Qué nos permite hacer la sentencia 'FileStream'? Es un constructor base de las operaciones de lectura y escritura de un fichero.
Es un constructor base de la operación de lectura
Es un constructor base de la operación de escritura
. //Abrimos el fichero para leerlo f1.abrir(lectura);
WHILE not final fichero DO
f1. leer(registro);
hacer operaciones con el registro ya leído;
END WHILE
//Cerramos el fichero f1.cerrar();
¿Qué tipo de lectura estamos haciendo en este código? secuencial aleatorio indexada. ¿Qué tipo de recorrido estamos haciendo en este fichero? aleatorio indexado
secuencial secuencial indexado
. ¿Qué especifica la directiva 'truncate' en el manejo de ficheros?
Abre el archivo si existe y realiza una búsqueda hasta el final del mismo, o crea un archivo nuevo
Especifica que el sistema operativo debe abrir un archivo existente. Cuando se abre el archivo, debe truncarse el archivo para que su tamaño sea de cero bytes
Especifica que el sistema operativo debe crear un archivo nuevo. Si el archivo ya existe, se sobrescribirá
Especifica que el sistema operativo debe abrir un archivo si ya existe; en caso contrario, debe crearse uno nuevo.
. ¿Qué tipo de acceso nos permite saltar hasta cualquier posición del fichero directamente, sin necesidad de recorrer todo lo anterior? Acceso aleatorio
Acceso físico
Acceso secuencial
Acceso equivalente
. Según el siguiente código, ¿qué nos mostrará por la pantalla de la consola?
using System;
using System.IO;
public class Ejemplo
{
public static void Main()
{
StreamReader fichero;
string linea;
fichero = File.OpenText("prueba.txt");
do
{
linea = fichero.ReadLine();
if (linea != null)
Console.WriteLine( linea );
}
while (linea != null);
fichero.Close();
}
} El contenido del fichero "prueba.txt"
No muestra por pantalla. Escribe contenido en el fichero
Muestra la palabra "linea"
Nunca se entra en el bucle DO...WHILE
. Según el siguiente código, sino existe el fichero, ¿qué nos mostrará por pantalla el IDE?
using System;
using System.IO;
public class Ejemplo
{
static void Main(string[] args)
{
try
{
string fileName = @"C:\fichero\prueba.txt";
// data a ser guardada
int[] data = { 0, 1, 2, 3, 4, 5 };
FileStream stream = new FileStream(fileName, FileMode.Open, FileAccess.Write);
StreamWriter writer = new StreamWriter(stream);
for (int i = 0; i < data.Length; i++)
{
// números son guardados en formáto UTF-8 format (4 bytes)
writer.Write(data[i]);
}
writer.Close();
stream.Close();
}
catch
{
Console.WriteLine("Error");
}
}
} Saldrá por pantalla los números de 0 a 5
Nos mostrará por pantalla la palabra "Error"
Nos creará le fichero "prueba.txt"
Saltará un error de compilación
.
|