Время

Версия Minecraft
1.7.10
1,470
19
189
Код:
LocalDateTime currentTime = LocalDateTime.now();
        int hour = currentTime.getHour();
        int minute = currentTime.getMinute();
        int second = currentTime.getSecond();
        drawString(fontRendererObj, String.valueOf(hour) + ":" + String.valueOf(minute) + ":" + String.valueOf(second), width - fontRendererObj.getStringWidth(String.valueOf(hour) + ":" + String.valueOf(minute) + ":" + String.valueOf(second)) - 2, 2, -1);
Использую такой код для отображения времени. Если минут/часов/секунд меньше или равно то пишет примерно так
12:9:17
А нужно так:
12:09:17
 
3,005
192
592
String m = String.valueOf(minute);
if (m.length() == 1)
d2 = d2.replace("MM", "0" + m);
else
d2 = d2.replace("MM", m);
+- разберешься. )
 
1,470
19
189
Doc написал(а):
String m = String.valueOf(minute);
if (m.length() == 1)
d2 = d2.replace("MM", "0" + m);
else
d2 = d2.replace("MM", m);
+- разберешься. )

Странно, но оно не работает
Код:
LocalDateTime currentTime = LocalDateTime.now();
        int hour = currentTime.getHour();
        String minute = String.valueOf(currentTime.getMinute());
        int second = currentTime.getSecond();
        if(minute.length() == 1) {
         minute = minute.replace("MM", "0" + minute);
        } 
        else
        {
         minute = minute.replace("MM", minute);
        }
        drawString(fontRendererObj, String.valueOf(hour) + ":" + minute + ":" + String.valueOf(second), width - fontRendererObj.getStringWidth(String.valueOf(hour) + ":" + minute + ":" + String.valueOf(second)) - 2, 2, -1);
        
 

CumingSoon

Местный стендапер
1,634
12
269
Thunder написал(а):
currentTime.format(DateTimeFormatter.ISO_LOCAL_TIME);

не тестировал


должно дать типа 10:09:14



Бери это.


И вообще, гений, зачем тебе DateTime, если ты берёшь только время? Тебе нужен LocalTime.now()
 
1,470
19
189
Код:
LocalTime localTime = LocalTime.now();
        int hour = localTime.getHour();
        int minute = localTime.getMinute();
        int second = localTime.getSecond();
        localTime.format(DateTimeFormatter.ISO_LOCAL_TIME);
        
        drawString(fontRendererObj, hour + ":" + minute + ":" + second, width - fontRendererObj.getStringWidth(hour + ":" + minute + ":" + second) - 2, 2, -1);
        
Не работает


Dahaka написал(а):
Боже...
Код:
String.format("%d:%02d:%02d", hour, minute, second);

То что надо.
 
3,005
192
592
Nix13Chanel написал(а):
Код:
LocalDateTime currentTime = LocalDateTime.now();
        int hour = currentTime.getHour();
        String minute = String.valueOf(currentTime.getMinute());
        int second = currentTime.getSecond();
        if(minute.length() == 1) {
         minute = minute.replace("MM", "0" + minute);
        } 
        else
        {
         minute = minute.replace("MM", minute);
        }
        drawString(fontRendererObj, String.valueOf(hour) + ":" + minute + ":" + String.valueOf(second), width - fontRendererObj.getStringWidth(String.valueOf(hour) + ":" + minute + ":" + String.valueOf(second)) - 2, 2, -1);
        

А ты знаешь, что ты заменяешь [font=Monaco, Consolas, Courier, monospace]"MM"[/font], а у тебя такого нету?
String minute1 = "MM";
String minute = String.valueOf(currentTime.getMinute());
if(minute.length() == 1)
minute1 = minute1.replace("MM", "0" + minute);
else
minute1 = minute1.replace("MM", minute);
И выводишь minute1.
Не пробовал.
И это код от другого мода.
 
1,470
19
189
Doc написал(а):
Nix13Chanel написал(а):
Код:
LocalDateTime currentTime = LocalDateTime.now();
        int hour = currentTime.getHour();
        String minute = String.valueOf(currentTime.getMinute());
        int second = currentTime.getSecond();
        if(minute.length() == 1) {
         minute = minute.replace("MM", "0" + minute);
        } 
        else
        {
         minute = minute.replace("MM", minute);
        }
        drawString(fontRendererObj, String.valueOf(hour) + ":" + minute + ":" + String.valueOf(second), width - fontRendererObj.getStringWidth(String.valueOf(hour) + ":" + minute + ":" + String.valueOf(second)) - 2, 2, -1);
        

А ты знаешь, что ты заменяешь [font=Monaco, Consolas, Courier, monospace]"MM"[/font], а у тебя такого нету?
String minute1 = "MM";
String minute = String.valueOf(currentTime.getMinute());
if(minute.length() == 1)
minute1 = minute1.replace("MM", "0" + minute);
else
minute1 = minute1.replace("MM", minute);
И выводишь minute1.
Не пробовал.
И это код от другого мода.
В любом случае то короче
 
Сверху