Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.12.2009, 12:45   #11
Pliks
Пользователь
 
Регистрация: 20.11.2009
Сообщений: 46
По умолчанию

ну так какой код - то получился?) Интересно посмотреть.
Runtime.getRuntime().gc() ява - один из самых чистых языков.
Pliks вне форума Ответить с цитированием
Старый 11.12.2009, 17:21   #12
sum42
Пользователь
 
Регистрация: 15.11.2008
Сообщений: 33
По умолчанию

привожу коды клиента и сервера по просьбе Pliks.
только в итоге я передавал числа от клиента серверу и обратно, т.к. так было
попроще, но и строки уже не являются проблемой.
мне все это было нужно для того чтобы вообще научиться передавать данные
с телефона на комп и обратно.

код сервера:
Код:
import java.net.ServerSocket;
import java.net.Socket;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;

public class mainServer {
		
    public static void main(String[] ar) {

		int port = 4444;
		
		int modeFigure;
			
		try {
			ServerSocket ss = new ServerSocket(port);
			Socket socket = ss.accept();
			
			InputStream sin = socket.getInputStream();
			OutputStream sout = socket.getOutputStream();

			DataInputStream in = new DataInputStream(sin);			
			DataOutputStream out = new DataOutputStream(sout);
			
			modeFigure = in.read();//принимаем от клиента какое-то число
			
			System.out.println("Chosen mode");
			System.out.println(modeFigure);//выводим принятое число
			out.write(9);//отправляем клиенту число 9
		
		} catch(Exception x) {
			x.printStackTrace();
		}
	
	}
}
часть кода клиента (обработка нажатия на клавишу):
Код:
String varForIp = "11.111.111.111";

else if (c == createMode2) {

           String name = "socket://" + varForIp + ":4444";

            try {
			
			//устанавливается соединение
                SocketConnection sc = (SocketConnection)Connector.open(name);
                 OutputStream os = null;
                 InputStream is = null;
                 os = sc.openOutputStream();
                 is = sc.openInputStream();

				 int modeFigure = 2;
                os.write(modeFigure);//отправляем серверу число 2

                int read_f;
                read_f = is.read();//принимаем от сервера какое-то число
                String str_read_f = "" + read_f;//преобразуем число в строку

                StringItem strmode2 = new StringItem(str_read_f,"work in mode 2");
                Form5.append(strmode2);//добавляем текстовый объект на форму

            } catch (IOException x){
                  x.printStackTrace();
            }

}
необходимы следующие команды в начале клиентского приложения

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.io.*;
import java.io.*;
sum42 вне форума Ответить с цитированием
Старый 13.12.2009, 19:13   #13
Pliks
Пользователь
 
Регистрация: 20.11.2009
Сообщений: 46
Счастье

греат сенкс, бат нуль поинтер эксепшен)...
Органика кода интересует едва - ли/\
Скореее то, как возможно коннектить клиент с |сервером|, который ЗА роутером... Шило - дело. Я сам затупил -у меня опсос Мегафон, как и многий другой коннект...
Гех надо брать корпоратив для :белого IP: оно за мани, но в пределе нормы...
Пробовал перекодировать изначальный коннект, что бы преодалеть серый ай пи опсоса типа:
Код:
...
String Socket_IP_port //
//Интерпритировать как 01.001.001.01/01.001.001.002:XXXX;
//иначе се же 01.001.001.01.01.001.001.002:XXXX;
// %   01.001.001.01(01.001.001.002):XXXX;
// %   01.001.001.01/01.001.001.002:XXXX;
// %  01.001.001.01.(01.001.001.002):XXXX;

и есть вариант ЗАРЕНЕЕ с промохом:
  01.001.001.01.(01.001.001.002:XXXX);

форматы держат сотовые, но коннект клозе, когда джи пи эр эс уже опен.
именно за роутера попасть дифферент - остальное описал Г.Шилдт))

 Ещё раз постиб за хелп! Может кто поможет заГадить опсоса().getSrat' == Pramo(v.Dushu) for his speedIQ
Runtime.getRuntime().gc() ява - один из самых чистых языков.
Pliks вне форума Ответить с цитированием
Старый 13.12.2009, 19:40   #14
Pliks
Пользователь
 
Регистрация: 20.11.2009
Сообщений: 46
По умолчанию

Извиняюсь за каламбур конечно, просто эти операторы вытаскивают душу - а с ней и полторы тысячи в месяц))
Вопрос в том, как послать запрос на соединение на сервер, который находится ЗА роутером...

Я пишу онлайн игру для мобильных телефонов, есть сервер и есть клиент, но нет дизайна...Это не проблема.Сея реальная проблема кроется в реализации, точнее в её ускорении == сама скорость есть значение, при делении которого не получишь объект, но ссылка на абстракцию гарантирована, при исключительном событии протолкнуть идею НОВОГО класса... катч: {идите в начало форума!}|
Runtime.getRuntime().gc() ява - один из самых чистых языков.
Pliks вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц