Lire un fichier binaire

Souliabdo Messages postés 186 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 11 avril 2011 - 10 août 2009 à 17:36
Souliabdo Messages postés 186 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 11 avril 2011 - 12 août 2009 à 09:06
Bonjour,
J'ai un fichier .doc que j'ai stocké sous forme binaire (byte[]Mydoc) dans ma base
Je voudrais savoir comment ouvrir ce fichier pour afficher son contenu pour l'utilisateur finale
j'ai trouvé un code qui resemble à
===========================================
string strfn=Convert.ToString(DateTime.Now.ToFileTime());
FileStream fs=new FileStream(strfn,
FileMode.CreateNew, FileAccess.Write);
fs.Write(barrImg,0,barrImg.Length);
fs.Flush();
fs.Close();
=================================================
fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);

BinaryReader r new BinaryReader(fs);

public static void ReadWholeArray (Stream stream, byte[] data)
{
int offset=0;
int remaining = data.Length;
while (remaining > 0)
{
int read = stream.Read(data, offset, remaining);
if (read <= 0)
throw new EndOfStreamException
(String.Format("End of stream reached with {0} bytes left to read", remaining));
remaining -= read;
offset += read;
}
====================================================================
public static byte[] ReadFully (Stream stream)
{
byte[] buffer = new byte[32768];
using (MemoryStream ms = new MemoryStream())
{
while (true)
{
int read = stream.Read (buffer, 0, buffer.Length);
if (read <= 0)
return ms.ToArray();
ms.Write (buffer, 0, read);
}
}
========================================================================

mais je vois pas comment mon fichier byte array sera ouvert pour etre visualiser par l'utilisateur final
une idée s'il vous plaît

Merci pour votre aide

2 réponses

Souliabdo Messages postés 186 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 11 avril 2011 2
12 août 2009 à 09:06
Merci pour ta réponse,
Comment récupérer le file name ?
Voici mon code que j'ai utilisé
byte[] docAlire = (byte[])...
FileStream fs = new FileStream(fileName,FileMode.CreateNew, FileAccess.Write);

docAlire est toujours un arrayByte recupérer à partir de ma base de données

une idée s'il vous plaît?
1
cs_cidre Messages postés 8 Date d'inscription mercredi 3 mars 2004 Statut Membre Dernière intervention 12 août 2009
11 août 2009 à 23:36
Bonjour,

Déjà répondu dans ton post plus récent. Ce bout de code te permet de lancer l'application associée à l'extension de ton fichier récupéré.

+
private static void OpenFileWithDefaultApplication(string fileName)
{
System.Diagnostics.Process process = new System.Diagnostics.Process();

process.StartInfo.FileName = fileName;

process.Start();

process.Close();
}


bonne chance
@+
0
Rejoignez-nous