Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Need Java-help или первые шаги в Java-программировании.

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10

Открыть новую тему     Написать ответ в эту тему

Sherhanius



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть JBuilder например

Всего записей: 1 | Зарегистр. 21-10-2010 | Отправлено: 15:16 21-10-2010
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Где найти справку по языку желательно с поиском по ключевым словам и примерами, примерно так как в Visual C или Visual Basic.
 
Язык можно англ или русск.

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 17:10 18-04-2011
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Black_Lung
Java SE 6 Documentation
http://www.oracle.com/technetwork/java/javase/downloads/index.html
там же есть еще java tutorial...

Всего записей: 2730 | Зарегистр. 16-10-2003 | Отправлено: 17:40 18-04-2011 | Исправлено: Garrett, 17:43 18-04-2011
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо конечно, пригодится, но в качестве справки не подходит, без поиска все таки очень неудобно, и по языку там нифига нет, и еще половина ссылок идет в инет
 
Вот это то что надо мне по языку но тоже без поиска
http://java.sun.com/docs/books/jls/third_edition/download/langspec-3.0.zip
 
Теперь нужно это всё вместе в одной системе справки и с поиском
 
 
 
 

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 11:50 20-04-2011 | Исправлено: Black_Lung, 12:07 20-04-2011
LokAr



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Начал делать програмки для телефонов на J2ME в NetBeans
Возник вопрос как использовать русские шрифты в SVG
Там сам код в XML с описанием шрифта по-символьно но только латиница, делал конвертацию шрифтов с кириллицей через Batik, но он в выходном файле тоже только латиницу рисует.
Помогите с проблемой а то квадратики на экране.
Может есть возможность в SVG внешний ttf использовать? Или он сам может конвертить как-то так?
Googleние толку мало даёт, в основном batik
 
Добавлено:
или может готовые шрифты русские в SVG есть?

Всего записей: 437 | Зарегистр. 15-03-2005 | Отправлено: 15:39 23-05-2011
Red Planet



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день!
 
Есть вопрос. Пишу свое посимвольное сравнение (условия задачи не позволяют equalsIgnoreCase применять). Проблема в том, что при сравнении игнорируется последний символ введенной строки (этот способ закомментирован), в незакомментированном все работает.
 
Например.
Введенная строка: And
Имена: Andrey, Anton
В список совпадающих вносится: Andrey.
Anton не вносится, так как третья буква t, а не d. Так и должно быть.
 
В неработающем if последняя буква введенной строки игнорируется.
Например.
Введенная строка: Anw
Имена: Andrey, Anton
В список совпадающих вносится: Andrey, Anton.
 
Код (неработающий if помечен красным, а работающий зеленым).

Цитата:
ArrayList<String> listOfEqs = new ArrayList<String>();
        for (String t: listOfNames) {
            int endOfStr = Math.min(etIn.getText().toString().length(), t.length());
            int cntOfEqSimbs = 0;
            for (int i=0; i<endOfStr; ++i) {
                if (t.substring(i, i+1).equalsIgnoreCase(etIn.getText().toString().substring(i, i+1)) && !listOfEqs.contains(t)) {
                    cntOfEqSimbs++;
                } // if.
                if (cntOfEqSimbs==etIn.getText().toString().length()) listOfEqs.add(t);

                
                /* if (!t.substring(i, i+1).equalsIgnoreCase(etIn.getText().toString().substring(i, i+1)) || listOfEqs.contains(t))
                    break;    
                    // listOfEqs.add(t);
                
                */  

            } // nested for.
        } // for.
            
        twFound.setVisibility(0);
        lvOfEqs.setAdapter(new ArrayAdapter<String>(this, android.R.layout.test_list_item, listOfEqs));
    } // onClick.

 
listOfNames - массив строк, источник имен для сравнения.
listOfEqs - массив строк, в который вносятся совпадающие имена.
endOfStr - предел, до которого сравниваем (нужен, так как не знаем, что будет короче: имя или введенная строка.
etIn - EditText, в который вводится строка для сравнения с именем.
cntOfEqSimbs - счетчик совпадающих символов (нужен для отбраковки: если хотя бы одна буква не совпадет, то имя не будет внесено в список совпадающих).
 
Да, у меня есть работающий if, но неработающий нравится больше, так как там нет лишней переменной cntOfEqSimbs и второго if.

Всего записей: 215 | Зарегистр. 18-06-2009 | Отправлено: 17:41 21-06-2011 | Исправлено: Red Planet, 17:45 21-06-2011
boromirok



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Red Planet
А почему вы используете t.substring(i, i+1)
а не t.charAt(i)
?
по-моему код будет проще, стройнее, можно будет пользоваться == вместо equalsIgnoreCase  
который, кстати, вам применять нельзя, как вы описали.
Еще проще t.indexOf(subStr, 0) применять
 
Добавлено:
Ух, не посмотрел на дату.  
Видимо припоздал я с советами своими.

Всего записей: 38 | Зарегистр. 20-10-2006 | Отправлено: 04:03 25-07-2011 | Исправлено: boromirok, 05:53 25-07-2011
Red Planet



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
boromirok, да, поздновато вы ответили.  
substring там используется, так как в строке может рассматриваться не символ, а группа символов. charAt там использовать не получится.
 
У меня другой вопрос. Знал раньше, что есть функция codePointAt (int indx), возвращает она значение кодовой точки символа на позиции indx. Впервые посмотреть решил. Понять не могу, почему именно такое число она возвращает.
 

Цитата:
String t = "Activity";
int a = t.codePointAt(0);
System.out.print(a);

 
Кодовая точка - значение, связанное с символом в схеме кодирования. Записывается в виде U+0000 для базовой кодовой плоскости. Вопроса не было бы, если бы в ответ получил шестнадцатиричное 41 или эквивалентное ему десятичное число 101.
 
System.out.print(a) выводит 65. Это не код латинской A (u+0041) в UTF-16. Откуда число 65 и что оно значит?
 
Решено.
65 в десятичной системе - это 41 в шестнадцатеричной.
 
 

Всего записей: 215 | Зарегистр. 18-06-2009 | Отправлено: 17:28 20-08-2011 | Исправлено: Red Planet, 13:19 25-08-2011
stasnewar

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Здравствуйте.
 
В общем есть сервер написаный на С, на котором прописан протокол передачи информации между сервером и клиентом. Моя задача создать GUI на Android. Доступа к серверу пока не имею. Было сказано создать эмулятор на том же языке С. Смысл в том, что бы сервер адекватно реагировал на запросы клиента. Вроде задача несложная, начал создавать, но вот столкнулся с проблемой:
 
допустим у нас есть такой код на сервере
 

Код:
 
unsigned char message[30]
........
message[0] = 'Q';
message[1] = 0x03;
message[2] = 0x01;
message[3] = 0x01;
message[4] = 0xFE;
........
nbytes = write(sockfd, message, strlen(message));
 

 
т.е. высылаем сообщение клиенту. Клиент в свою очередь адекватно распознает с первого по четвыртый байт, а последний при переводе в int выдает значение 65533. Какая-то непонятная ситуация, ведь в байте можно записать максимальное число 255. Может кто-то может объяснить каким образом тут появилось число 65533 и как сделать так, что бы 0xFE нормально доходило до клиента?
 
Второй вопрос, когда я высылаю данные с сервера, то к клиенту(Android) эти данные доходят только после завершения соединения. Читаю данные при помощи:
 

Код:
 
BufferedReader bufReader = new BufferedReader(new InputStreamReader(socket.getInputStream()), 2*1024);
message = new char[100];
............
while((numBytes = bufReader.read(message)) != -1) {
    if(!flag)
        break;
    for(int i = 0; i < numBytes; i++) {
        tcp.storeChar(message[i]);
        tcp.checkPacket();
    }
}
 

 
Может тут с буфером надо что-то сделать, чтоб данные сразу доходили до клиента?
 
 

Всего записей: 79 | Зарегистр. 01-03-2009 | Отправлено: 16:59 13-08-2012 | Исправлено: stasnewar, 17:09 13-08-2012
adasiko



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
данные доходят только после завершения соединения

ну так само собой
PS: могу скинуть свой проектик по реализации удалённых утилит imp/exe для оракла, в 11 ой версии xe на instant client перевели, а без утилит экспорта-импорта дампа на клиентах тяжело. Клиент написан на c++, сервер на java

Всего записей: 1807 | Зарегистр. 30-06-2008 | Отправлено: 18:51 13-08-2012 | Исправлено: adasiko, 18:55 13-08-2012
stasnewar

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
ну так само собой  

Дело в том, что вчера все работало отлично. При создании BufferReader не объявлял размер буфера, т.е.

Код:
BufferedReader bufReader = new BufferedReader(new InputStreamReader(socket.getInputStream()));  

и все было ок. Но после очередного запуска дебагера он вдруг начал писать вот такую штуку:

Цитата:
Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.

и, соответственно, данные перестали приходить.

Всего записей: 79 | Зарегистр. 01-03-2009 | Отправлено: 20:29 13-08-2012 | Исправлено: stasnewar, 20:30 13-08-2012
stasnewar

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Проблемы решил.  
Вместо BufferedReader использовал BufferedInputStream. Воспользовался функцией read(byte[] b).
Число 65533, скорее всего появлялось из-за того, что сервер высылает unsigned byte, а функция read(char[] c) ждет ASCII код и, когда получает "непонятный" код, начинает свои какие-то странные преобразования.
Соответственно функция read(byte[] b) не решила проблем с интерпретацией. Пришлось прописать функцию типа:

Код:
 
private int unsignedByteToInt(byte b) {
    int out;
    out = b < 0 ? b + 256 : b;
    return out;
}
 

Все работает.
Насчет BufferedReader, думаю, просто глюк эмулятора.

Всего записей: 79 | Зарегистр. 01-03-2009 | Отправлено: 23:38 17-08-2012
SuperDimon007



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите упихать программу в цикл:

Код:
remoteViews.setTextViewText(R.id.sub1,
        android.text.Html.fromHtml("<b>" + sub[0] + "</b>"));
remoteViews.setTextViewText(R.id.sub2,
        android.text.Html.fromHtml("<b>" + sub[1] + "</b>"));
remoteViews.setTextViewText(R.id.sub3,
        android.text.Html.fromHtml("<b>" + sub[2] + "</b>"));
            ................

Вся проблема выразить R.id.sub1, R.id.sub2 и т.д. в цикле.

Всего записей: 51 | Зарегистр. 12-06-2012 | Отправлено: 18:54 24-09-2012
adasiko



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SuperDimon007
Ну создать массив, итератор, вектор... из этих элементов, иначе никак
ЗЫ: про динамический код не буду даж заикаться - ибо андройд

Всего записей: 1807 | Зарегистр. 30-06-2008 | Отправлено: 19:59 24-09-2012
stasnewar

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Добрый день.
 
Суть проблемы в следующем. Есть класс, описывающий устройство:
 
public byte[] spn_version = new byte[2];
public byte max_args;
public byte max_depth;
public byte conceptsNum;
.....
 
Нужно написать код, который достанет значения полей класса и сложит в байтовую таблицу. Вроде легко, используем reflection и дело с концом... Но не тут-то было. Критически важной есть последовательность записываемых байтов  в таблицу. Т.е. нужно записывать строго в той последовательности, в которой описаны в классе. Пример с классом выше:
 
byte[] image = new byte[100];
 
image[0] = spn_version[0];
image[1] = spn_version[1];
image[2] = max_args;
image[3] = max_depth;
image[4] = conceptsNum;
......
 
Решение с reflection работает, на "чистом" java, как только перехожу на android, метод getFields() возвращает поля в какой-то, для него понятной, последовательности.  
 
Все это нужно для коммуникации сервера (язык С) и клиента Андроид.
 
Класс очень большой, писать ручками - нелогично.  
Может как-то при помощи сериализации достать значения полей класса?
Кто подскажет куда копать?

Всего записей: 79 | Зарегистр. 01-03-2009 | Отправлено: 19:34 10-01-2013 | Исправлено: stasnewar, 19:36 10-01-2013
VitRom

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос немного оффтопный, но подходящей ветки не нашёл, да и деплоймент таки близко связан.
 
Есть на выбор JRE 6u65 и 7u45 (ага, та самая, "с повышенной безопасностью").
Расчитывать лучше на 6-ку, а то в следующих 7-ках вроде ещё больше строгостей обещали.
Есть сайт с несколькими апплетами, работающими в т.ч. и с локальными файлами.
Апплеты подписаны самопиской, а некоторые, вроде, и вообще ничем.
Сайт и URL-ы аплетов постоянные.
 
Как убрать запросы на неограниченный (или как его там) запуск апплетов с UNKNOWN сертификатами с этого конкретного сайта?
Может, можно хоть как-то привязаться к url и забыть про всё остальное?
 
Добавлено:
ЗЫ. сайт -- "сторонний", всякие перекомпиляции невозможны

Всего записей: 3097 | Зарегистр. 18-06-2006 | Отправлено: 14:16 11-11-2013
A_V

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VitRom
для jre1.6 может прокатит выставление
Java Control Panel -> Advanced -> Security -> Mixed Code -> disable verififcation
для семерки так просто не убрать

Всего записей: 770 | Зарегистр. 07-04-2002 | Отправлено: 23:07 11-11-2013
VitRom

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
A_V, спасибо за идею, попробую позже, пока, к сожалению, нет возможности.
 
Однако НЯП это же потенциальная бааальшая дыра, нет? Хотелось бы убить двух зайцев: разобраться с именно этим сайтом и одновременно сохранить возможность максимально безопасно использовать сабж в других местах Сети. И что вообще понимается под "миксед кодом"? Начал было копать Оракловские доки по деплойменту, но пока только ещё больше запутываюсь...

Всего записей: 3097 | Зарегистр. 18-06-2006 | Отправлено: 12:09 12-11-2013
sonicyouthru

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день!
 
Java-апплет ("Java-based BEM program for Fracture analysis for 2-D anisotropic solids": http://rci.rutgers.edu/~denda/e-Handbook/installation.html#winstallation ) не запускается в браузерах IE и Opera ("Security Level: Medium"). В чем может быть проблема? Пробовал на WinXP и Win7. Использовал Java Standart Edition v7. Установку делал по инструкции ( http://rci.rutgers.edu/~denda/e-Handbook/installation.html#winstallation ):

Цитата:
"In order to run the e-Handbook, the browser must be have Java Platform properly installed and the security properly setup. Java Standard Edition can be downloaded from the SUN site. Look for Java Runtime Environment (JRE) 5.0 or newer. Click Download and look for the Window system to download the self-extracting file. Once the download process is completed, run the executable and follow the onscreen instructions to install.  
 
 The Java Policy file is required for the e-Handbook to Save, Load and Execute the Fortran file. Click Java Policy File and save the file to the user.home\.java.policy. (Note that the file has two periods, one before and after 'java'.) Here user.home refers to the value of the system property named user.home, which specifies the user's home directory. For example, if the user logged on as Mitch, save the file into C:\Documents and Settings\Mitch\.java.policy. Restart the computer so Windows can load the new security settings.  
 
 Download the e-Handbook. The e-Handbook can be unzipped to a folder e-Handbook, which can be placed anywhere on the PC. In the e-Handbook folder, go to the "gui" directory to look for the file index.html file. The e-Handbook can be started by clicking index.html file. Current Installation is good for Windows platform only. Linux and Unix Installation will be available later."

 
Апплет можно скачать с сайта разработчика:
http://rci.rutgers.edu/~denda/e-Handbook/downloads/.java.policy
http://rci.rutgers.edu/~denda/e-Handbook/downloads/e-Handbook.zip
 
Вид ошибки:
 

 
 
 

Всего записей: 101 | Зарегистр. 02-04-2006 | Отправлено: 17:41 27-07-2014 | Исправлено: sonicyouthru, 17:57 27-07-2014
KALINI

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
есть слегка муторный сайт по обучению java -программированию,но зато материал очень легок в усвоении новичку,наверное даже самому туп..му http://www.webok.info/ru
не реклама саита,а просто мне нужны люди для набора в группы для бесплатного коллективного обучения языку

Всего записей: 1 | Зарегистр. 16-08-2014 | Отправлено: 00:24 17-08-2014
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Need Java-help или первые шаги в Java-программировании.


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru