Android添加2小时到目前为止String

时间:2015-08-17 17:43:46

标签: java android date

我有一个存储getDate()值的TextView。此getDate()值是日期,但格式为String

 textview_device_datetime.setText(data.getDate().replace('T', ' '));

这是结果

16-08-2015 16:15:16

但我会在这个字符串日期添加2个小时。 我该怎么办?

任何帮助都很棒。 感谢

2 个答案:

答案 0 :(得分:5)

final String dateString = "16-08-2015 16:15:16";
final long millisToAdd = 7_200_000; //two hours

DateFormat format = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");

Date d = format.parse(dateString);
d.setTime(d.getTime() + millisToAdd);

System.out.println("New value: " + d); //New value: Sun Aug 16 18:15:16 CEST 2015

答案 1 :(得分:0)

这里我附上了代码的示例。

import java.time.*;
import java.text.*;
import java.util.*;
public class AddTime
{
  public static void main(String[] args)
  {
    String myTime = "16-08-2015 16:15:16";
    System.out.println(addHour(myTime,2));
  }

  public static String addHour(String myTime,int number)
  {
    try
    {
    SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
    Date d = df.parse(myTime); 
    Calendar cal = Calendar.getInstance();
    cal.setTime(d);
    cal.add(Calendar.HOUR, number);
    String newTime = df.format(cal.getTime());
    return newTime;  
    } 
    catch(ParseException e)
    {
      System.out.println(" Parsing Exception");
    }
    return null;

  }
}