目前我正在使用以下代码:
String currentDateTimeString = DateFormat.getDateTimeInstance()
.format(new Date());
Run Code Online (Sandbox Code Playgroud)
从这里我得到以下格式的输出 -
Jun 5, 2015 1:15:29 PM
但现在我想要以下面的格式输出 -
2015-06-05 08:10:40
Run Code Online (Sandbox Code Playgroud)
它可以是12或24小时格式.
我想要当前日期时间以上日期时间格式.
我已经使用了SimpleDateFormat但是我无法使用当前日期和时间获得上述日期时间格式
那么,我怎样才能做到这一点?
我有两个日期的字符串格式,如DD/MM/YYYY.现在,我如果写的条件date1是前date2.我怎样才能做到这一点?请帮我.
我有java util date Thu Feb 28 15:35:00 GMT+00:00 2013
如何将其转换为HH:MM.
我试图通过下面的代码片段来做到这一点:
SimpleDateFormat formatter = new SimpleDateFormat("HH:MM");
formatter.setTimeZone(TimeZone.getTimeZone("GMT"));
return formatter.format(objDate);
Run Code Online (Sandbox Code Playgroud)
它给出了正确的结果,dd mmm但总是给出02分钟HH:MM
请告诉我这个功能有什么问题?
正如标题所述; 有没有办法比较时间,看看它们是否在彼此的一定时间内?IE浏览器.判断Time1是否在Time2的15分钟内的方法.一个更复杂的例子可能是在75分钟内(因为小时也会改变,因此将分钟数重置为0.
在java/android中有很多不同的比较日期和时间的方法.有Time班级,Date班级和Calendar班级.甚至还有一种compareTo方法和方法可以检查日期是在另一个之前还是之后,但我无法找到解决问题的方法.
另一个例子:
如果我有Time1,12:30和Time2,12:10,我想检查他们是否还有15分钟的时间.我可以比较分钟差异的差异.30 - 10 = 20. 20显然不低于15.
但是,Time1是12:56而Time2是13:02,这种方法不起作用.2 - 56 = -54,但实际差异为6.一种解决方案是,如果您知道以后哪个时间,请检查后一分钟是否小于前一分钟.如果不是,则在前一分钟添加60.
这是比较好的方法吗?这会给我的代码增加很多复杂性,特别是当我需要检查小时和日期时.是否有更简单的解决方案或api可用?
我试图将时间戳转换为人类可读的日期和时间.我试过了:
String dateSt = 1386580621268;
Log.i("*****", "date st is = "+dateSt);
long unixSeconds = Long.parseLong(dateSt);
Log.i("*******", "unix seconds is = "+unixSeconds);
Date date = new Date(unixSeconds*1000L); // *1000 is to convert seconds to milliseconds
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy"); // the format of your date
String formattedDate = sdf.format(date);
System.out.println(formattedDate);
Run Code Online (Sandbox Code Playgroud)
09-12-2013不过,我得到了预期的结果28-12-45908.上面的例子可以在以下位置找到:将Unix时间戳转换为日期java,由David Hofmann回答
我在格式化日期时遇到问题。
来自:EEE, d MMM yyyy HH:mm:ss Z(例如:Mon, 05 Jan 2014 15:10:00 +0200)
至:dd/MMM/yyyy HH:mm(例如:05/01/2014 15:10)
这是我尝试过的:
private String formatDate(String date) {
SimpleDateFormat format = new SimpleDateFormat("dd/MMM/yyyy HH:mm");
Date dateResult = null;
try {
dateResult = format.parse(date);
}
catch (java.text.ParseException e) {
Log.e(TAG, "", e);
}
return dateResult.toString();
}
Run Code Online (Sandbox Code Playgroud)
我得到异常:无法解析的日期偏移量 0
这里有一些帮助会很好谢谢;)
我需要让Day Hours Minutes达到特定日期示例:
日期="2015-08-08 16:38:28"
Current_Date = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date());
Run Code Online (Sandbox Code Playgroud)
并达到Date结果将是
2天1小时30分钟
android datepicker android-intent android-layout android-date
上面的图片是日期选择器,点击OK后,结果显示如下.
代码如下
public class DatePickerFragment extends DialogFragment
implements DatePickerDialog.OnDateSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the current date as the default date in the picker
final Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
// Create a new instance of DatePickerDialog and return it
return new DatePickerDialog(getActivity(), this, year, month, day);
}
public void onDateSet(DatePicker view, int year, int month, int day) {
// Do something with the date …Run Code Online (Sandbox Code Playgroud) 我已经阅读了很多关于此的帖子,但我无法让它发挥作用。我需要一个 textView (id - datumprikaz ) 来显示当前日期,如下所示:28.11.2016。
我已经设法在我的 java 中使用此方法添加日期:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView dateView = (TextView)findViewById(R.id.datumprikaz);
setDate(dateView);
}
public void setDate (TextView view){
String str = String.format("%tc", new Date());
view.setText(str);
}
Run Code Online (Sandbox Code Playgroud)
问题是我得到的结果是:格林威治标准时间 10 月 28 日星期五 19:57:37
我只需要它来显示当前日期,如 28.11.2016。
我该怎么做呢 ?
我试过另一种方法
String trenutniDatum = DateFormat.getDateTimeInstance().format(new Date());
datumprikaz textView = (datumprikaz) findViewById(R.id.datumprikaz);
datumprikaz.setText(trenutniDatum);
Run Code Online (Sandbox Code Playgroud)
但是 setText 是红色的并且不起作用。
我怎么得到这个?28.11.2016 在 id 为 datumprikaz 的 textView 中
好的,所以我创建了一个函数来显示距离未来某个日期的天数...直到天数超过 9 天为止都是正确的..如果超过,它似乎会显示随机的天数。 ..请参阅下面的我的代码:
public String daysTillExpire() {
String daysLeft = "";
int position = 0 ;
String inputDateString = UIDM.get(position).date;
Calendar calCurr = Calendar.getInstance();
Calendar day = Calendar.getInstance();
try {
day.setTime(new SimpleDateFormat("dd-MM-yyyy").parse(inputDateString));
} catch (ParseException e) {
e.printStackTrace();
}
if (day.after(calCurr)) {
String noumberOfDays = "Days left: " + (day.get(Calendar.DAY_OF_MONTH) - (calCurr.get(Calendar.DAY_OF_MONTH)));
daysLeft = UIDM.get(position).date + "\n(" + noumberOfDays+")" ;
}
else if (day.before(calCurr)) {
daysLeft = "Key Expired";
return daysLeft; }
return daysLeft;
}
Run Code Online (Sandbox Code Playgroud)
UIDM是一个包含信息的数据模型...String inputDateString …
android ×10
android-date ×10
java ×4
date ×2
datepicker ×1
java-time ×1
textview ×1
time ×1
timestamp ×1