Skip to main content
GameDev.net gamedev.net
🔒 Locked 🎮 Unity

[java] Java Socket Server

Started by Thoover Dec 11, 2008 at 3:43 PM 0 replies 1.4k views
Original Post
Thoover
Thoover
This is my source currently:

import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.io.*;
import java.net.*;
import java.util.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import javax.imageio.*;
import java.lang.*;
import java.applet.*;
import java.lang.reflect.Method;
import javax.swing.JOptionPane;
import javax.swing.JApplet;

public class HDbetaServer
{
	public static void main(String[] args) throws IOException
	{
		ServerSocket serverSocket = null;
		boolean listening = true;
		try {
			serverSocket = new ServerSocket(1024);
		}
		catch (IOException e)
		{
			System.err.println("Could not listen on port: 1024.");
			System.exit(-1);
		}
		while (listening)
		new HDbetaServerThread(serverSocket.accept()).start();
		serverSocket.close();
	}
}

class HDbetaServerThread extends Thread 
{
	String path = "/home&#47;******&#<span class="java-number">47</span>;users&#<span class="java-number">47</span>;cache"</span>;
	<span class="java-visibilitymodifier">private</span> Socket socket = <span class="java-keyword">null</span>;
	<span class="java-visibilitymodifier">public</span> HDbetaServerThread(Socket socket)
	{
		<span class="java-keyword">this</span>.socket = socket;
	}
	<span class="java-visibilitymodifier">public</span> <span class="java-primitives">void</span> run()
	{
		<span class="java-keyword">try</span>
		{
			PrintWriter out = <span class="java-keyword">new</span> PrintWriter(socket.getOutputStream(), <span class="java-keyword">true</span>);
			BufferedReader in = <span class="java-keyword">new</span> BufferedReader(<span class="java-keyword">new</span> InputStreamReader(socket.getInputStream()));
			String inputLine;
			String commands[];
			out.println(<span class="java-literal">"sucessfull"</span>);
			<span class="java-keyword">while</span> (<span class="java-number">1</span> == <span class="java-number">1</span>)
			{
				inputLine = <span class="java-keyword">null</span>;
				<span class="java-keyword">do</span>
				{
					inputLine = in.readLine();
				}
				<span class="java-keyword">while</span> (inputLine == <span class="java-keyword">null</span> || inputLine == <span class="java-literal">""</span>);
				commands = inputLine.split(<span class="java-literal">" "</span>);
				<span class="java-keyword">if</span>(commands[<span class="java-number">0</span>].startsWith(<span class="java-literal">"REGISTER:"</span>))
				{
					String user = commands[<span class="java-number">1</span>];
					String pass = commands[<span class="java-number">2</span>];
					<span class="java-primitives">int</span> fail = <span class="java-number">0</span>;
					<span class="java-keyword">try</span>
					{
						String answe = <span class="java-literal">""</span>;
						FileReader fiill=<span class="java-keyword">new</span> FileReader(path+<span class="java-literal">"."</span>+user);
						BufferedReader bufulf=<span class="java-keyword">new</span> BufferedReader(fiill);
						String TextLine = <span class="java-keyword">null</span>;
						<span class="java-primitives">int</span> i = <span class="java-number">0</span>;
						<span class="java-keyword">while</span>((TextLine = bufulf.readLine()) != <span class="java-keyword">null</span>)
						{
							<span class="java-keyword">if</span>(i == <span class="java-number">0</span>)
							{
							}
							i=i+<span class="java-number">1</span>;
						}
						bufulf.close();
						fail = <span class="java-number">1</span>;
						out.println(<span class="java-literal">"failed"</span>);
					}
					<span class="java-keyword">catch</span> (IOException fe)
					{
						<span class="java-keyword">try</span>
						{
							FileWriter filewriter = <span class="java-keyword">new</span> FileWriter(path+<span class="java-literal">"."</span>+user);
							BufferedWriter bufferedwriter = <span class="java-keyword">new</span> BufferedWriter(filewriter);
							bufferedwriter.write(pass+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>+'\n'+<span class="java-literal">"<span class="java-number">0</span>"</span>);
							bufferedwriter.close();
							FileWriter filewriterr = <span class="java-keyword">new</span> FileWriter(path+<span class="java-literal">".private."</span>+user);
							BufferedWriter bufferedwriterr = <span class="java-keyword">new</span> BufferedWriter(filewriterr);
							bufferedwriterr.write(<span class="java-literal">""</span>);
							bufferedwriterr.close();
							out.println(<span class="java-literal">"sucessfull"</span>);
						}
						<span class="java-keyword">catch</span>(IOException ioexception)
						{
							out.println(<span class="java-literal">"failed"</span>);
							fail = <span class="java-number">1</span>;
						}
					}
				}
				<span class="java-keyword">if</span>(commands[<span class="java-number">0</span>].startsWith(<span class="java-literal">"LOGIN:"</span>))
				{
					String user = commands[<span class="java-number">1</span>];
					String pass = commands[<span class="java-number">2</span>];
					String saved = <span class="java-literal">""</span>;
					<span class="java-primitives">int</span> fail = <span class="java-number">0</span>;
					<span class="java-keyword">try</span>
					{
						String answe = <span class="java-literal">""</span>;
						FileReader fiill=<span class="java-keyword">new</span> FileReader(path+<span class="java-literal">"."</span>+user);
						BufferedReader bufulf=<span class="java-keyword">new</span> BufferedReader(fiill);
						String TextLine = <span class="java-keyword">null</span>;
						<span class="java-primitives">int</span> i = <span class="java-number">0</span>;
						<span class="java-keyword">while</span>((TextLine = bufulf.readLine()) != <span class="java-keyword">null</span>)
						{
							<span class="java-keyword">if</span>(i == <span class="java-number">0</span>)
							{
								saved = TextLine;
							}
							i=i+<span class="java-number">1</span>;
						}
						bufulf.close();

					}
					<span class="java-keyword">catch</span> (IOException fe)
					{
						out.println(<span class="java-literal">"failed"</span>);
						fail = <span class="java-number">1</span>;
					}
					<span class="java-keyword">if</span> (pass.equals(saved) &amp;&amp; fail == <span class="java-number">0</span>)
					{
						out.println(<span class="java-literal">"sucessfull"</span>);
					}
					<span class="java-keyword">if</span> (!pass.equals(saved) &amp;&amp; fail == <span class="java-number">0</span>)
					{
						out.println(<span class="java-literal">"failed"</span>);
						fail = <span class="java-number">1</span>;
					}
				}
				<span class="java-keyword">if</span>(commands[<span class="java-number">0</span>].startsWith(<span class="java-literal">"CHAT:"</span>))
				{
					String user = commands[<span class="java-number">1</span>];
					String say = commands[<span class="java-number">2</span>];
				}
				<span class="java-keyword">if</span>(commands[<span class="java-number">0</span>].startsWith(<span class="java-literal">"SEND:"</span>))
				{
					String user = commands[<span class="java-number">1</span>];
					String say = commands[<span class="java-number">2</span>];
					String to = commands[<span class="java-number">3</span>];
				}
			}
		}
		<span class="java-keyword">catch</span> (IOException e)
		{
			
		}
	}
}



</pre></div><!--ENDSCRIPT-->

I am wondering how I can send a chat line to all users through this and also to just &#111;ne user, without waiting for the input of each to send it off to the correct person(s)</code></pre></div>

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.