Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Προγραμματισμός Java

Java UDP : Πώς να στείλετε ένα αρχείο

Το User Datagram Protocol ( UDP ) χρησιμοποιεί την " datagram " μορφή για αποστολή και λήψη δεδομένων . Μοιάζει πολύ με τυπικές υποδοχές Java , η « datagramsockets " class συνδέει για να φιλοξενήσει τις μηχανές μέσα από το πρωτόκολλο UDP για την αποστολή πακέτων πληροφοριών . UDP είναι ένα απλό πρωτόκολλο που δεν κάνει κανένα έλεγχο για λάθη , έτσι ώστε τα πακέτα που αποστέλλονται ενδέχεται να φτάσουν εκτός λειτουργίας ή εξαφανίζονται . Ωστόσο , όταν η αξιοπιστία δεν απαιτείται τόσο η ταχύτητα μετάδοσης , UDP μπορεί να προσφέρει μια εναλλακτική λύση σε άλλους τρόπους μετάδοσης . Σε αυτές τις περιπτώσεις , μπορείτε να χρησιμοποιήσετε το Java " Datagram " αντικείμενα για να στείλει πακέτα μέσω UDP . Τα πράγματα που θα χρειαστείτε
Java Development Kit ( JDK )
Η Εμφάνιση Περισσότερες οδηγίες
Η 1

Δημιουργήστε την βασική κατηγορία για να στείλετε το UDP datagram , με κύρια λειτουργία . Η τάξη θα χρησιμοποιήσει το " datagrampacket ", " DatagramSocket , " και " InetAddress " βιβλιοθήκες :

java.net.DatagramPacket εισαγωγής ? Java.net.DatagramSocket εισαγωγής ? Java.net.InetAddress εισαγωγής ?

τάξη SendUDP {

δημόσια στατική άκυρη κύρια ( String [ ] args ) {

} } 2

Δημιουργήστε ένα νέο DatagramSocket και datagrampacket η κύρια μέθοδος . Το αντικείμενο υποδοχή datagram θα αποστείλει το αντικείμενο πακέτων datagram , το οποίο θα πάρει τις πληροφορίες του από τον πίνακα byte «ρυθμιστικό» :

DatagramSocket s = νέα DatagramSocket ( ) ? Byte [ ] buf = νέα byte [ 1000 ] ? datagrampacket έξω?
εικόνων 3

Δημιουργία μηνύματος δείγμα για να στείλει πάνω από UDP , και να κωδικοποιήσει μέσα στο byte array " buf : "

String outString = " Αυτή η είναι το μήνυμα " ? buf = outString.getBytes ( ) ?
Η 4

Υπόσταση το " έξω " πακέτων datagram με τη σειρά ρυθμιστικό byte περιέχει το μήνυμα , και στο σημείο αυτό προς την διεύθυνση IP του δέκτη , η οποία ελήφθη με τη μέθοδο της " getByName " . Ο αριθμός " 9999 " αντιπροσωπεύει έναν αριθμό θύρας ανοικτή σε UDP συνδέσεις στο τέλος του δέκτη : αυτό θα μπορούσε να είναι οποιοσδήποτε αριθμός θύρας , ανάλογα με τη διαμόρφωση του διακομιστή παραλαβής του

InetAddress δέκτη = InetAddress.getByName ( " http . : //www.sun.java.com " ) ?

datagrampacket out = νέα datagrampacket ( buf , buf.length , δέκτης , 9999 ) ?
5

Στείλτε το πακέτο . Τώρα που το πακέτο datagram περιέχει τις πληροφορίες που απαιτούνται για την αποστολή , το διαβιβάζει μέσω της υποδοχής Datagram :

s.send ( έξω ) ?
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα