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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2009, 09:21   #1
erslgoeirjh
Форумчанин
 
Регистрация: 19.05.2009
Сообщений: 153
По умолчанию Проблема со строками таблицы

Есть таблица jTable. Ей соответствует табличная модель myTM, у которой один столбец.

Я обрабатываю строки таблицы следующим образом:


double val; // например, 3.14
DecimalFormat mydc;
String stroka, stroka1, stroka2;
int i, n, strokalength, diffvallen;

n = myTM.getRowCount();
for (i=0; i<n; i++) {
stroka = (String)myTM.getValueAt(i, 0);
mydc = new DecimalFormat("0.00E00");
stroka1 = mydc.format(val);
stroka1 = stroka1.replaceAll(",", ".");
stroka1 = stroka1.replaceAll(" ", "");
strokalength = stroka.length();
diffvallen = stroka1.length();
stroka2 = stroka.substring(0, strokalength-diffvallen);
stroka = stroka2 + stroka1;
myTM.setValueAt(stroka, i, 0);
}



При этом в табличной модели myTM строка в позиции (i, 0) первоначально имеет вид, похожий на "----|-----|-----|-----|-----|----" (то есть набор минусов и вертикальных черт).
И вместо того, чтобы в результате в таблицу выводилось "----|-----|-----|-----|---3.14E00" ,
в таблицу выводится "3.14E00---|-----|-----|-----|----" .

Как я ни пытался обойти эту проблему -- в том числе с помощью преобразования строк stroka, stroka1 и stroka2 в массив char[], манипуляции с этими массивами и создания заново строки stroka из массива char[], ничего не получалось -- всё равно выводилось на экран:
"3.14E00---|-----|-----|-----|----", а не "----|-----|-----|-----|---3.14E00".

В чём причина этого?
erslgoeirjh вне форума Ответить с цитированием
Старый 20.05.2009, 01:21   #2
alexinspir
Новичок
Джуниор
 
Аватар для alexinspir
 
Регистрация: 26.08.2008
Сообщений: 1,010
По умолчанию

Код:
stroka2 = stroka.substring(0, strokalength-diffvallen);
stroka = stroka2 + stroka1;
ппц названия переменных и обьяснение.
2 раза путался в обьяснении и 1 раз в коде - Не поймешь что где
ромик0: Cколько получают здешние модераторы?
pu4koff: У модераторов сдельная оплата труда. Выдал предупреждение - плюс к премии. Выдал бан - лучший модератор месяца со всеми вытекающими.

Последний раз редактировалось Fox; 27.05.2009 в 11:51. Причина: помягче давайте выражаться
alexinspir вне форума Ответить с цитированием
Старый 26.05.2009, 15:22   #3
Пазир
Новичок
Джуниор
 
Регистрация: 26.05.2009
Сообщений: 1
Лампочка

Спасибо, полезная ссылка
Пазир вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема в создании таблицы *.mkv Microsoft Office Excel 2 27.02.2009 00:38
Проблема при создании таблицы используя sql Proof БД в Delphi 2 26.02.2009 22:09
проблема с выводом данных из таблицы. помогите поправить france@ PHP 4 07.01.2009 12:46
Связанные таблицы - проблема при обращении к полю БД nataly_ukr БД в Delphi 7 13.11.2007 10:47
работа со строками. проблема Slash Общие вопросы Delphi 3 21.06.2007 16:46