Moinsen.
Habe vor 2 Tagen mit dem programmieren von Netzwerken begonnen und wollte mal ein erstes Testprogramm mit Socket und ServerSocket schreiben:
CLIENT:
Jetzt habe ich ein Problem. Beim compilieren des client-codes bekomme ich ne Fehlermeldung, sobald ich socket.getInputStream()/socket.getOutputStream() oder socket.close benutze. Warum weiß ich nicht. (Habe den Server-Code mal mit dazugepackt. Der ist aber noch nicht angepasst :S)
Kann mir jemand vlt helfen. Wäre sehr nett. Vielen Dank schonmal
LG Burgadon
Habe vor 2 Tagen mit dem programmieren von Netzwerken begonnen und wollte mal ein erstes Testprogramm mit Socket und ServerSocket schreiben:
CLIENT:
Java:
//CLIENT
import java.io.*;
import java.net.*;
public class Client{
public static void main(String[] args){
Client client = new Client();
try {
client.socketKonstruieren();
} catch (IOException e) {
e.printStackTrace();
}
}
void socketKonstruieren() throws IOException {
//Socket auf localhost port 1000 konstruieren
String ip = "127.0.0.1"; //localhost
int port = 1000;
Socket socket = new Socket(ip,port);
}
void senden(String textSenden) throws IOException {
//Etwas über den Socket versenden
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
out.write(textSenden);
//Zeilenumbruch senden
out.newLine();
out.flush();
}
String empfangen() throws IOException {
//BufferedReader konstruieren
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
//Eine Zeile lesen
String textEmpfangen = in.readLine();
//Text ausgeben
System.out.print("Eingegangener Text: ");
System.out.println(textEmpfangen);
return textEmpfangen;
//Schliessen aller offenen Reader und Writer, der Socket wird dabei automatisch geschlossen
socket.close();
//in.close();
}
SERVER:
Java:
//SERVER
import java.io.*;
import java.net.*;
public class Server{
public static void main(String[] args){
int port = 1000;
//Server starten
ServerSocket server = new ServerSocket(port);
while(true) {
//Warten auf eine neue Verbindung
Socket s = server.accept();
//Neue Verbindung ist da, wir lesen einfach aus,
//was sie uns so schickt und schicken dann alles in grossbuchstaben wieder zurück
BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
String text = in.readLine();
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
out.write(text.toUpperCase());
out.newLine();
out.flush();
//Aufräumen
out.close();
in.close();
server.close();
}
}
}
Jetzt habe ich ein Problem. Beim compilieren des client-codes bekomme ich ne Fehlermeldung, sobald ich socket.getInputStream()/socket.getOutputStream() oder socket.close benutze. Warum weiß ich nicht. (Habe den Server-Code mal mit dazugepackt. Der ist aber noch nicht angepasst :S)
Kann mir jemand vlt helfen. Wäre sehr nett. Vielen Dank schonmal
LG Burgadon