Java-Eingabe-Stream aus einem Projekt

December 13

Java-Eingabe-Stream aus einem Projekt

Im Gegensatz zu Javas spezialisiertere Eingabeobjekte können ein InputStream-Objekt Sie auf Byte-Ebene Daten aus einer bestimmten Ressource zu arbeiten. Es ist jedoch nur in der Lage zu lesen in einer statischen Datei Daten. Wenn Sie Daten aus einem anderen laufenden Java-Projekt in einem InputStream-Objekt verwenden möchten, müssen Sie einen Netzwerk-Rahmen verwenden Sie zum Abrufen der Daten vor dem Speichern in der InputStream.

InputStream vs. Netzwerk-Sockets

Wenn Sie Daten aus einem laufenden Projekt in ein InputStream-Objekt erhalten wollen, müssen Sie zuerst im Rahmen einer Netzwerk-Sockets eingebettet. Eines der Projekte fungiert als Server, in dem Sie ein Objekt der ServerSocket implementieren, die eingehende Verbindungen an eine bestimmte Maschine-Anschlussnummer überwacht. Das andere Projekt, der Client erstellt einen Socket, der Anschluss an die Portnummer und einen Datenstrom öffnen wird.

Lesen von Daten

Sobald die beiden Projekte eine Verbindung hergestellt haben, nehmen sie die Runden gehen durch eine vorgegebene Abfolge, wobei ein Programm Daten hin und her über den Socket sendet. Das Projekt zum Datenversand kann Objekte wie PrintWriter verwenden, um Daten über den Socket senden, und das andere Projekt BufferedReader Objekt zum Empfangen der Daten verwendet. Sie können diese Daten speichern, den Sie durch Instanziieren eines Objekts InputStreamReader innerhalb Ihrer BufferedReader in einem InputStream-Objekt erhalten.

Störungen

Beliebige Anzahl von Dingen kann schief gehen, wenn Sie Daten zwischen Projekten über eine Socketverbindung übertragen. Ein Projekt oder anderen verlieren plötzlich über eine Netzwerkverbindung oder konnte man einen Fehler in Ihrem Code Konnektivität. Wenn Ihr Projekt ein Problem auftritt, wenn versucht wird, Daten senden oder empfangen, werden sie nicht erholen und zerschmettert. Aus diesem Grund erfordert Java "Try" und "fangen" Anweisungen zu verwenden, wann immer Sie Socketoperationen schreiben.

Stream schließen

Aus technischer Sicht gibt es nichts Sie verlassen eine Socketverbindung zu einem anderen Projekt offen halten für die gesamte Dauer Ihres Programms. Guter Programmierstil, bestimmt jedoch, dass die Socket-Verbindung vom Client mit der ".close()" Objekt-Methode zu schließen, sobald Sie fertig sind Ihre Daten übertragen. Dadurch werden die Ressourcen, die Ihre Client-Programm auf die Erhaltung des Sockets verbringt, und ist höflich, an den Server, der auch die Verarbeitungsleistung an die Buchse widmet, solange sie geöffnet ist.