如何在Java中从响应中删除某些字符?

时间:2018-10-04 03:29:12

标签: java android string retrofit2

我有一些像这样的字符串响应日期:

Color((math.Random().nextDouble() * 0xFFFFFF).toInt() << 0).withOpacity(1.0)

我只想抽时间,所以我想要这样:

2018-11-30 12:00:00

还有我的问题,我们可以删除这样的字符吗?

5 个答案:

答案 0 :(得分:2)

想要使用SimpleDateFormat的声音,例如:

Date today = Calendar.getInstance().getTime();
SimpleDateFormat formatter = new SimpleDateFormat("hh.mm");
String folderName = formatter.format(today);

根据您的评论尝试:

int index = time.indexOf(‘:’);
int start = index -2;
int end = index + 2;
String newTime = time.substring(start,end);

答案 1 :(得分:1)

您可以尝试

Calendar calendar = Calendar.getInstance();
        SimpleDateFormat mdformat = new SimpleDateFormat("HH:mm:ss");
        String strDate = "Current Time : " + mdformat.format(calendar.getTime());
        display(strDate);

答案 2 :(得分:1)

您可以使用SimpleDateFormat来获取时间,然后将替换为。 我希望它可以解决您的问题!

答案 3 :(得分:1)

String apiDateString = "2018-11-30 12:00:00"; // in this case, your string from api
Date apiDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(apiDateString); // convert api date string to date
SimpleDateFormat formatter = new SimpleDateFormat("hh.mm");
String yourDateString = formatter.format(apiDate);

我想你想要这个。

编辑后几乎没有评论。

  1. 将字符串转换为日期。 (apiDateString到apiDate)
  2. 为要形成的内容创建新格式。在这种情况下,为12.00
  3. 将apiDate转换为您的格式。 (apiDate-> 12.00)

答案 4 :(得分:0)

您可以参考this post。 使用SimpleDateFormat格式化日期。

从字符串到日期

// Convert from string to date
String yourDate = "2018-11-30 12:00:00";  
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = format.parse(yourDate);

//Use calender instead of date to getHours and minute, due to deprecated
Calendar calendar = GregorianCalendar.getInstance();
calendar.setTime(date);
calendar.get(Calendar.HOUR);
calendar.get(Calendar.MINUTE);

System.out.println(calendar.get(Calendar.HOUR_OF_DAY)+"."+calendar.get(Calendar.MINUTE)); //12.0