Envoi de fichier sur socket UDP ou TCP

jackachi Messages postés 2 Date d'inscription lundi 16 juin 2003 Statut Membre Dernière intervention 26 décembre 2005 - 26 déc. 2005 à 17:11
cs_boucherf Messages postés 6 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 22 février 2011 - 17 sept. 2009 à 00:17
Bonjour,



J'ai trouvé beaucoup de code pour envoyer des datas "txt" sur une socket UDP ou TCP.

Pourtant je ne trouve rien sur comment envoyé un fichier en UDP par exemple (raw data).



J'ai parcouru un peu le web et je vois plein de truc sur "filestream" et autre mais je n'arrive pas à mes fins.



Quelqu'un pourrait il m'aider



Merci par avance

2 réponses

cs_cromwell Messages postés 1 Date d'inscription mercredi 15 mars 2006 Statut Membre Dernière intervention 15 mars 2006
15 mars 2006 à 13:00
Slt. Au fait je cherche un script en c pr administrer un partage de fichier en reseau local en creant une interface graphique sous vb par exemple. les boutons seront par exemples suprimer ajouter...
0
cs_boucherf Messages postés 6 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 22 février 2011
17 sept. 2009 à 00:17
private void envoie_Serveur()
{
try
{
adresse_Ip = IPAddress.Parse(choix);
TcpClient leClient = new TcpClient();
leClient.Connect(choix, port);
// leClient.Connect("localhost", port);
//==================================================================
//La transmission de données se fait via un objet NetworkStream qui
//s'obtient en utilisant la méthode GetStream...System.Net.Sockets
//NetworkStream transmission leClient.GetStream();

//DE MEME S'IL Y A UNE PIECE JOINTE, DECOUPE ET ENVOI DE LA PIECE...

//*********************************************************************

FileStream Lecteur = new FileStream(chemin, FileMode.Open, FileAccess.Read);
BinaryReader Lire = new BinaryReader(Lecteur);
//StreamReader sr = new StreamReader(transmission);
//--------------------------------------------------------

//--------------------------------------------------------

FileStream ftampon = new FileStream(@"g:\tampon.txt" /*+ FileName.ToString()*/, FileMode.OpenOrCreate);
StreamWriter wirt = new StreamWriter(ftampon);

//StreamWriter sw = new StreamWriter("practice.txt");
//sw.Write("www.java2s.com");
// sw.Close();
// Byte[] SendTheseBytes = Encoding.ASCII.GetBytes(Response);




//--------------------------------------------------------
//envoi la taille de fichier
int len = (int)Lecteur.Length;

wirt.WriteLine(len);

// Byte[] envoie = Encoding.ASCII.GetBytes(len.ToString);
String msg = Convert.ToString(len);
long taille_affine = msg.Length;
Byte[] envoie = new Byte[taille_affine];
envoie = System.Text.Encoding.Default.GetBytes(msg);

transmission.Write(envoie, 0, envoie.Length);
//--------------------------------------------------------
//--------------------------------------------------------
//envoi la taille de nom
taille_affine = nom.Length;
msg = Convert.ToString(taille_affine);
long taill = msg.Length;
Byte[] envoi = new Byte[taill];
envoi = System.Text.Encoding.Default.GetBytes(msg);
transmission.Write(envoi, 0, envoi.Length);
//--------------------------------------------------------
//envoi le nom de fichiers
//MessageBox.Show("hhh");
taille_affine = nom.Length;
// envoie = new Byte[taille_affine];
Byte[] envo = System.Text.Encoding.Default.GetBytes(nom);
transmission.Write(envo, 0, envo.Length);



//--------------------------------------------------------
wirt.WriteLine(nom);
wirt.Close();
ftampon.Close();
//--------------------------------------------------------
while (Lecteur.Position < Lecteur.Length)
{
byte[] tableau = Lire.ReadBytes(len);
transmission.Write(tableau, 0, tableau.Length);
}

EnvFich = true;
Lire.Close();
Lecteur.Close();
transmission.Close();
leClient.Close();

}
catch (Exception Ex)
{
EnvFich = false;
gestion_Erreur(Ex);
}

}


private void gestion_Erreur(Exception probleme)
{
MessageBox.Show(probleme.Message + "\n\n" + probleme.Source, "Client ...Erreur !!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
0
Rejoignez-nous