Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.EventQueue;
- import java.io.File;
- import java.io.IOException;
- import java.io.ObjectInputStream;
- import java.net.ServerSocket;
- import java.net.Socket;
- import java.util.Scanner;
- import javax.swing.JFrame;
- import java.awt.BorderLayout;
- import javax.swing.JPanel;
- import javax.swing.JLabel;
- public class QuizServer {
- private JFrame frame;
- //static ServerSocket variable
- private static ServerSocket server;
- //socket server port on which it will listen
- private static int port = 9876;
- /**
- * Launch the application.
- */
- public static void main(String[] args) {
- EventQueue.invokeLater(new Runnable() {
- public void run() {
- try {
- QuizServer window = new QuizServer();
- window.frame.setVisible(true);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- });
- }
- /**
- * Create the application.
- * @throws IOException
- * @throws ClassNotFoundException
- */
- public QuizServer() throws ClassNotFoundException, IOException {
- initialize();
- }
- /**
- * Initialize the contents of the frame.
- * @throws IOException
- * @throws ClassNotFoundException
- */
- public void server(JLabel mainText) throws IOException, ClassNotFoundException {
- //create the socket server object
- server = new ServerSocket(port);
- Scanner scanner = new Scanner(new File("C://Program Files/plik.txt"));
- int dodpowiedz = 0;
- mainText.setText(mainText.getText()+" "+"zle");
- //keep listens indefinitely until receives 'exit' call or program terminates
- while(scanner.hasNextLine()){
- String[] temp;
- String temporary=scanner.nextLine();
- temp = temporary.split(":");
- String pytanie=temp[0];
- String odpowiedz=temp[1];
- mainText.setText(mainText.getText()+" "+pytanie);
- while(dodpowiedz==0) {
- //creating socket and waiting for client connection
- Socket socket = server.accept();
- //read from socket to ObjectInputStream object
- ObjectInputStream ois = new ObjectInputStream(socket.getInputStream());
- //convert ObjectInputStream object to String
- String message = (String) ois.readObject();
- if(message.equals(odpowiedz)) {
- dodpowiedz=1;
- mainText.setText(mainText.getText()+" "+"Otrzymana odpowiedz: " + message);
- ois.close();
- socket.close();}
- else mainText.setText(mainText.getText()+" "+"zle");
- //terminate the server if client sends exit request
- if(message.equalsIgnoreCase("exit")) break;}
- dodpowiedz=0;
- }
- scanner.close();
- System.out.println("Shutting down Socket server!!");
- //close the ServerSocket object*/
- server.close();
- }
- private void initialize() throws ClassNotFoundException, IOException {
- frame = new JFrame();
- frame.setBounds(100, 100, 450, 300);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- JPanel panel = new JPanel();
- frame.getContentPane().add(panel, BorderLayout.CENTER);
- JLabel mainText = new JLabel("New label");
- panel.add(mainText);
- server(mainText);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement