powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Даты в Java
25 сообщений из 54, страница 1 из 3
Даты в Java
    #39621165
helga7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Считываю данные из таблицы БД в файл Excel.
Вот кусок кода, связанный с ячейкой, где хранится дата.
Код: java
1.
2.
3.
SimpleDateFormat dt = new SimpleDateFormat("dd.mm.yyyy");
java.util.Date fdate = dt.parse(table.getModel().getValueAt(i, j).toString());
cell.setCellValue(fdate);


Но возникает ошибка:
Exception in thread "main" java.text.ParseException: Unparseable date: "2018-02-01 00:00:00"
at java.text.DateFormat.parse(DateFormat.java:366)
at testexcel2.TestExcel2.main(TestExcel2.java:88)
Что я не так делаю? Мне нужно обрезать время до простой даты.
...
Рейтинг: 0 / 0
Даты в Java
    #39621177
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
helga7Что я не так делаю?
Продолжаете игнорировать документацию...
Ну, и вообще как у вас вот это получается, я не понимаю
dd.mm.yyyy = 2018-02-01 00:00:00
...
Рейтинг: 0 / 0
Даты в Java
    #39621199
helga7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczПродолжаете игнорировать документацию...
Ну, и вообще как у вас вот это получается, я не понимаю
dd.mm.yyyy = 2018-02-01 00:00:00
Дело в том, что я всю документацию и интернет перерыла, также пробовала метод format(), но тоже не получается.
Сама в недоумении... Загадка какая-то...
...
Рейтинг: 0 / 0
Даты в Java
    #39621209
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так не надо интернет перерывать. Вот тут документация.
https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html
там написано какие буковки что обозначают. Например mm - это минуты которые у вас между днем и годом. Как они там очутились?
А ещё у вас между полями точки. А вот в строке почему-то не точки а что-то другое. Дефисы, возможно?
А ещё у вас в шаблоне только дата, а в строке ещё и время. Вот странно, правда?
...
Рейтинг: 0 / 0
Даты в Java
    #39621217
helga7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczНапример mm - это минуты которые у вас между днем и годом. Как они там очутились?
Это опечаткая, там должны быть заглавные буквы. Месяц.

BlazkowiczА вот в строке почему-то не точки а что-то другое. Дефисы, возможно?
Не знаю, откуда берутся дефисы. В таблице БД формат такой: 01-фев-2018.

BlazkowiczА ещё у вас в шаблоне только дата, а в строке ещё и время. Вот странно, правда?
Да, действительно, странно очень. Я не понимаю, откуда оно берется...
...
Рейтинг: 0 / 0
Даты в Java
    #39621226
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
helga7Это опечаткая, там должны быть заглавные буквы. Месяц.

А, ну извините. Значит вы всё знаете, а то что в коде не правильно, это всё опечатки.

helga7Не знаю, откуда берутся дефисы. В таблице БД формат такой: 01-фев-2018.
Вы делаете мне больно.
- У вас нет таблицы БД в коде, у вас есть Swing JTable.
- Если дата хранится в БД в формате даты, то у неё нет никакого формата строки. Есть дефолтное форматирование в БД и в инструментах работы с БД.
- В БД дефисы, в JTable дефисы, он у вас в шаблоне точки. Интуитивное программирование.

helga7Да, действительно, странно очень. Я не понимаю, откуда оно берется...
Пацказываю. Фотатсюта:
Код: java
1.
table.getModel().getValueAt(i, j).toString()
...
Рейтинг: 0 / 0
Даты в Java
    #39621233
helga7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczПацказываю. Фотатсюта:
Код: java
1.
table.getModel().getValueAt(i, j).toString()


И как эту строку правильно написать?
Я действительно работаю с БД. И данные беру оттуда, записываю их в двумерный массив, который передаю JTable.
...
Рейтинг: 0 / 0
Даты в Java
    #39621242
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
helga7И как эту строку правильно написать?
А она написана неправильно?

helga7Я действительно работаю с БД. И данные беру оттуда, записываю их в двумерный массив, который передаю JTable.
Это всё совершенно не важно, когда у вас строка в формате 2018-02-01 00:00:00, а шаблон dd.mm.yyyy.
...
Рейтинг: 0 / 0
Даты в Java
    #39621244
helga7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczА она написана неправильно?
Судя по всему именно на ней возникает исключение, которое я описала в первом посте.

BlazkowiczЭто всё совершенно не важно, когда у вас строка в формате 2018-02-01 00:00:00, а шаблон dd.mm.yyyy.
Я поняла, это автоматические настройки файла Excel. Там можно изменить формат от руки...
...
Рейтинг: 0 / 0
Даты в Java
    #39621302
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
helga7Судя по всему именно на ней возникает исключение, которое я описала в первом посте.

Исключение возникают в методах, а не в строчках.
И когда у вас в строчке 4 метода, вы, естественно, теряетесь. А вот если бы вы писали вот так:
Код: java
1.
2.
3.
4.
TableModel model = table.getModel();
Object value = model.getValueAt(i, j);
String cellText = value.toString();
Date fdate = dt.parse(cellText);


У вас бы было меньше вопросов что именно не так, с первыми тремя строками, если исключение возникает только в 4й.

helga7Я поняла, это автоматические настройки файла Excel. Там можно изменить формат от руки...
facepalm.
Девушка, строку 2018-02-01 00:00:00 нельзя распрарсить шаблоном dd.mm.yyyy. Но можно другим. За вас написать другой шаблон или в своём можете исправить "опечатки"?
...
Рейтинг: 0 / 0
Даты в Java
    #39621671
helga7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczИсключение возникают в методах, а не в строчках.
Я не такая глупая, чтобы мне это объяснять. Это просто способ говорить, когда указывается строка ошибки компилятором.

BlazkowiczА вот если бы вы писали вот так:
Код: java
1.
2.
3.
4.
TableModel model = table.getModel();
Object value = model.getValueAt(i, j);
String cellText = value.toString();
Date fdate = dt.parse(cellText);


У вас бы было меньше вопросов что именно не так, с первыми тремя строками, если исключение возникает только в 4й.
Ничего не меняется... Ошибка остается.

BlazkowiczДевушка, строку 2018-02-01 00:00:00 нельзя распрарсить шаблоном dd.mm.yyyy. Но можно другим. За вас написать другой шаблон или в своём можете исправить "опечатки"?
Я не понимаю, о каких "опечатках" идет речь, поэтому лучше, конечно, привести пример кода. Иначе стала бы я писать на форуме.
...
Рейтинг: 0 / 0
Даты в Java
    #39621689
Nixic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сначала я думал: вот ведь блин издеваются над ньюби программерами, но блин!
Посмотри документацию по SimpleDateFormat, ссылку же дали.
Ну не понимаешь ты английский, ну погугли блин, выбери в результатах "только русский", второй день вокруг такой ерунды с бубном скакать, ну как так можно-то. блин :)
Можно гуглить не только "SimpleDateFormat", но и "Exception in thread "main" java.text.ParseException: Unparseable date". Результатов сотни в поиске.
п.с.
Ошибка в несовпадении шаблона и строки которую парсять.
...
Рейтинг: 0 / 0
Даты в Java
    #39621691
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nixic,

Я сдался. Третий топик даже комментировать нет желания. Будем ждать ещё желающих.
...
Рейтинг: 0 / 0
Даты в Java
    #39621707
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
helga7Я не понимаю, о каких "опечатках" идет речь, поэтому лучше, конечно, привести пример кода. Иначе стала бы я писать на форуме.

Вам, наверное, стоит пойти в форум работа.
<:o)
...
Рейтинг: 0 / 0
Даты в Java
    #39621709
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
helga7Это опечаткая, там должны быть заглавные буквы. Месяц.
helga7Я не понимаю, о каких "опечатках" идет речь.
...
Рейтинг: 0 / 0
Даты в Java
    #39621760
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
helga7Я поняла, это автоматические настройки файла Excel. Там можно изменить формат от руки...

Нет. В Excel дата-время хранится в числовом виде. Формат влияет только на показ для просмотра глазами. Для чтения содержимого клетки Excel с датой или датой-временем этот формат не имеет значение, а промежуточное преобразования в текстовую строку для получения java.util.Date не требуется. Но я не вижу у вас чтения из Excel.

По вашему вопросу предыдущим ораторам было бы быстрее ответить, чем писать свой флейм.

Можно получить java.util.Date например так:

Код: java
1.
2.
String s = "2018-02-01 00:00:00";
Date dt = LocalDateTime.parse(s.replace (" ", "T")).toDate();
...
Рейтинг: 0 / 0
Даты в Java
    #39621767
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partisan MПо вашему вопросу предыдущим ораторам было бы быстрее ответитьЭто контрпродуктивно: человек должен или самостоятельно решать свои задачи, используя советы или он профнепригодный паразит.
...
Рейтинг: 0 / 0
Даты в Java
    #39621779
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partisan MПо вашему вопросу предыдущим ораторам было бы быстрее ответить, чем писать свой флейм.

Ваше мнение, нам очень важно. Держите нас в курсе.

Можно получить java.util.Date например так:

Partisan M
Код: java
1.
2.
String s = "2018-02-01 00:00:00";
Date dt = LocalDateTime.parse(s.replace (" ", "T")).toDate();


https://en.wikipedia.org/wiki/Kludge
...
Рейтинг: 0 / 0
Даты в Java
    #39621790
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczВаше мнение, нам очень важно. Держите нас в курсе.

Я отвечал не вам. И ответил (в отличие от вас). Вступать в дискуссию с неадекватами не имею желания.
...
Рейтинг: 0 / 0
Даты в Java
    #39621795
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partisan MВступать в дискуссию с неадекватами не имею желания.
:D Ну, судя по тому что вы мне всегда отвечаете, то это не про меня?
...
Рейтинг: 0 / 0
Даты в Java
    #39621804
helga7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Partisan M Можно получить java.util.Date например так:
Код: java
1.
2.
String s = "2018-02-01 00:00:00";
Date dt = LocalDateTime.parse(s.replace (" ", "T")).toDate();


Попробовала. Ругается на метод toDate(). Говорит, нет такого...
...
Рейтинг: 0 / 0
Даты в Java
    #39621807
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
helga7Partisan M Можно получить java.util.Date например так:Попробовала. Ругается на метод toDate(). Говорит, нет такого...Я знал, что ни одно доброе дело не останется безнаказанным.
...
Рейтинг: 0 / 0
Даты в Java
    #39621811
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И где же наш герой? Почему не напишет за даму рабочий код? И чтобы сразу компилировался.
...
Рейтинг: 0 / 0
Даты в Java
    #39621812
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ещё попутно придётся объяснить часовые пояса, иначе как локальное время в Date сконвертировать?
...
Рейтинг: 0 / 0
Даты в Java
    #39621813
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Джентельменов-то у нас полно - мест нету" (ц) "Ералаш", выпуск про старушку и школьников в автобусе.
...
Рейтинг: 0 / 0
25 сообщений из 54, страница 1 из 3
Форумы / Java [игнор отключен] [закрыт для гостей] / Даты в Java
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]