我有一个存储getDate()值的TextView。此getDate()值是日期,但格式为String
textview_device_datetime.setText(data.getDate().replace('T', ' '));
这是结果
16-08-2015 16:15:16
但我会在这个字符串日期添加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;
}
}