Gå til innhold

Anbefalte innlegg

Ja spørsmålet er ganske åpenbart i emnetittelen. Hvordan kan jeg få sendt en fil over til en annen pc (altså send og motta), lage status bar o.s.v. Og hvordan kan jeg f.eks laste ned en fil fra nettet med en URL. Alt dette med C# såklart i tilfelle noen skulle komme med morsomheter som at jeg må taste inn URL'en i webbrowseren og pakka.

Lenke til kommentar
Videoannonse
Annonse

Laste ned fil fra nettet:

(tatt fra huet, så sikket noen skrivefeil:)

WebClient wc = new WebClient();

Stream s = wc.OpenRead("http://jorn.aakre.no");

StreamReader sr = new StreamReader(s);

sr.ReadAll();

sr.Close();

s.Close();

wc.Dispose();

 

eller du kan bruke HttpRequest og HttpResponse.

 

Sende/motta filer mellom PC'er:

* Enkleste --> System.Net.Sockets.TcpListener / TcpClient (eller UDP)

* System.Net.Sockets.Socket

* Webservices om det er servere

* FTP, Email, etc kan jo også brukes ganske enkelt om dette er ønskelig

Lenke til kommentar

Vel det jeg tenkte på var mitt eget lille p2p nettverk som jeg skulle prøve å lage... men skal se på de tingene dine du lista opp på sisten der... Ser ikke ut som det er så mange som driver med C# her ser jeg :p

 

EDIT: hva er buffer?

Endret av Zic0
Lenke til kommentar
Laste ned fil fra nettet:

(tatt fra huet, så sikket noen skrivefeil:)

WebClient wc = new WebClient();

Stream s = wc.OpenRead("http://jorn.aakre.no");

StreamReader sr = new StreamReader(s);

sr.ReadAll();

sr.Close();

s.Close();

wc.Dispose();

 

eller du kan bruke HttpRequest og HttpResponse.

 

Sende/motta filer mellom PC'er:

* Enkleste --> System.Net.Sockets.TcpListener / TcpClient  (eller UDP)

* System.Net.Sockets.Socket

* Webservices om det er servere

* FTP, Email, etc kan jo også brukes ganske enkelt om dette er ønskelig

5419086[/snapback]

 

noe som er ENDA litt penere er hvis du bruker

using(WebClient wc = new WebClient()){
wc.download()... //koden din her
}

 

WebClient er vel så banal at den kun laster ned fra http? System.Net.Sockets er vel det å se på her. rtfm, eller noe ;)

 

med using så slipper du å dispose ;) Da er wc kun aktiv i scopet, så disposer den seg selv. Etter hva jeg har hørt, skal det være en "sikrere" måte å bruke sånne klasser man kun har bruk for en kort periode.

Lenke til kommentar

På MSDN så fant jeg to veldige gode eksempler på TCPlistener og TCPClient, så med det kan jeg jo lage spill over nett også :D Men skjønner fortsatt ikke hva buffer er for under eksemplene så setter de begge gangene et array[256] og sier det er bufferet. Noen ideer?

Lenke til kommentar

Et buffer er et mollomlager, et sted du legger data før du behandler og lagrer det.

 

TCPClient får data fra en Socket, og legger det i et buffer, byte[256]

ofte er et buffer større en dette, men det varierer, størrelsen spiller forsåvidt liten rolle, men et stort buffer gjør at du ikke trenger å fylle bufferet så ofte.

 

TCPClient og TCPListener er egentlig veldig enkle å bruke.

Les om Sockets på MSDN

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...