C sharp - ficheros c#

 
Vista:

ficheros c#

Publicado por alex (10 intervenciones) el 25/02/2006 12:03:22
como puedo crear ficheros para guardar informacion?

he probado este, pero no veo q se cree ningun archivo

public static void leerFich()
{
StreamWriter sw = new StreamWriter("TestFile.txt");

// Add some text to the file.
sw.Write("This is the ");
sw.WriteLine("header for the file.");
sw.WriteLine("-------------------");
// Arbitrary objects can also be written to the file.
sw.Write("The date is: ");
sw.WriteLine(DateTime.Now);

}

TAMBIEN HE PROBADO CON ESTO

public static void leerFich()
{
private const string FILE_NAME = "MyFile.txt";
public static void Main(String[] args)
{
if (File.Exists(FILE_NAME))
{
Console.WriteLine("{0} already exists.", FILE_NAME);
return;
}
StreamWriter sr = File.CreateText(FILE_NAME);
sr.WriteLine ("This is my file.");
sr.WriteLine ("I can write ints {0} or floats {1}, and so on.",
1, 4.2);
sr.Close();
}
}

SE SUPONE QUE DONDE SE CREARIAN LOS FICHEROS???
AHH¡¡ Y SI LO QUE QUIERO GUARDAR SON OBJETOS, COMO LO HARIA?

A VER SI ALGUIEN ME HECHA UN CABLE.

O ME EXPLICA BASICAMENTE CMO LO TENGO QUE HACER.
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ficheros c#

Publicado por Susana (1 intervención) el 27/02/2006 10:19:28
Prueba con un FileStream en vez d con un StreamWriter

// para leer, el fichero debe existir o salta excepción
FileStream fS = new FileStream(@"C:\Fichero.txt", FileMode.Open);
if(fS!=null)
{
buff = new byte[(int)fS.Length];
fS.Read(buff, 0, (int)fS.Length);
fS.Close();
}

// Para escribir, si el fichero no existe
FileStream fS = new FileStream(@"C:\Fichero.txt", FileMode.Create);
fS.Write(buff, 0, buff.Length);
fS.Close();

// SI el fichero existe tambien puedes hacer un Open y luego Write o directamente puiedes hacer un FileMode.Append, q t crea el fichero si es q no existe y escribe en el apartir dl final, si existe escribe como si nada al final dl fichero

buff es un array de bytes --> byte[] buff

A ver si te sirve, sino intenta investigar sobre el FileStream q seguro q t va mejor.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ficheros c#

Publicado por Frede (1 intervención) el 19/09/2006 15:56:32
Te faltan las siguientes lineas para el primer ejemplo

using System.IO;

y

sw.Close();

tambien podrías cambiar:

StreamWriter sw = new StreamWriter("TestFile.txt");

por

StreamWriter sw = new StreamWriter("C:\\TestFile.txt");
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ficheros c#

Publicado por Nicanor Mamani Taco (1 intervención) el 09/10/2009 20:23:11
Me gustaria saber como se crea desde c# un archivo en cualquier unidad.
este codigo funciona cuando el archivo ya existe en cualquier unidad.
tengo dos metodos uno para crear y otro para mostrar:

//metodo para crear fichero
public static void CrearFicheroN(string fichero)
{
BinaryWriter bw = null; //salida de datois hacia fichero
char resp;
try
{
//crear un flujo hacia el fichero que permita escribir
bw = new BinaryWriter(new FileStream(fichero, FileMode.Create, FileAccess.Write));
//declarar los datos a escribir en el fichero
string nombre, direcion,EstadoCivil;
long telefono;
//leer datos de la entrar estandar y escribirlos
do
{
Console.Write("Nombre: ");
nombre = Console.ReadLine();
Console.Write("Estado Civil:");
EstadoCivil = Console.ReadLine();
Console.Write("direccion : ");
direcion = Console.ReadLine();
Console.Write("telefono:");
telefono = Int64.Parse(Console.ReadLine());
bw.Write(nombre);
bw.Write(EstadoCivil);
bw.Write(direcion);
bw.Write(telefono);
Console.Write("desea escribir otro registro (S/N) ");
resp = (char)Console.Read();
Console.ReadLine();
} while (resp == 's' || resp == 'S');
}
finally
{
if (bw != null)
bw.Close();
}
}

// metodo para mostrar fichero
public static void mostrarFicheroN(string fichero)
{
BinaryReader br = null;
try
{
if (File.Exists(fichero))
{
br = new BinaryReader(new FileStream(fichero, FileMode.Open, FileAccess.Read));
string nombre, direccion,estadocivil;
long telefono;
do
{
nombre = br.ReadString();
estadocivil = br.ReadString();
direccion = br.ReadString();
telefono = br.ReadInt64();
Console.WriteLine(nombre);
Console.WriteLine(estadocivil);
Console.WriteLine(direccion);
Console.WriteLine(telefono);
Console.WriteLine();
} while (true);
}
else
{
Console.WriteLine("el fichero nbo existe");
}
}
catch (EndOfStreamException)
{
Console.WriteLine("fin del listado");

}
finally
{
if (br != null)
br.Close();
}
}

//
y este codigo es para llamar desde el menu principal
//primero para agregar
static void Main(string[] args)
{

string nombreFichero = null;

try
{
Console.Write("Nombre del fichero: ");
nombreFichero = Console.ReadLine();
//verifica si ek fichero existe
char resp = 's';
if (File.Exists(nombreFichero))
{
Console.Write("El fichero existe. ¿desea sobreescirbir? (s/n)");
resp = (char)Console.Read();
//eliminar los caracteres sobrantes en el flujo de entrada
Console.ReadLine();
}
if (resp == 's')
{
CrearFicheroN(nombreFichero);
}
}
catch (IOException e)
{
Console.WriteLine("Error: " + e.Message);
}
}
// y este es para llamar desde menu principal al mostrar

static void Main(string[] args)
{

string nombreFichero = null;
Console.WriteLine("Mostrar fichero");
try
{
if (args.Length == 0)
{
Console.Write("Nombre del fichero:");
string nombFichero = Console.ReadLine();
mostrarFicheroN(nombFichero);
}
else
{
mostrarFicheroN(args[0]);
}
}
catch (IOException e)
{
Console.WriteLine("Error: " + e.Message);
}
Console.ReadLine();*/
}
}

cualquier duda o consulta de este codigo:a mi mail. [email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar