我正在添加这个问题,因为我是Java和Android的新手,我搜索了几个小时试图解决这个问题.答案来自相关答案的组合,所以我想我会记录我为其他可能正在努力的人学到的东西.见答案.
对于一些背景知识,我的经验主要是PHP的Web开发和一点Ruby.我唯一的操作系统是Linux(Ubuntu Studio),我(不情愿地)在Android Studio 2.1.2中开发我的第一个Android应用程序.我的Java设置如下:
>java -version
> openjdk version "1.8.0_91"
> OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-3ubuntu1~15.10.1-b14)
> OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
Run Code Online (Sandbox Code Playgroud) datetime android android-gradle-plugin threetenbp threetenabp
我想要一个Java程序来计算两个日期之间的天数.
我怎样才能包括闰年和夏季?
我的代码:
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
public class NewDateDifference {
public static void main(String[] args) {
System.out.print("Insert first date: ");
Scanner s = new Scanner(System.in);
String[] eingabe1 = new String[3];
while (s.hasNext()) {
int i = 0;
insert1[i] = s.next();
if (!s.hasNext()) {
s.close();
break;
}
i++;
}
System.out.print("Insert second date: ");
Scanner t = new Scanner(System.in);
String[] insert2 = new String[3];
while (t.hasNext()) {
int i = 0;
insert2[i] = t.next(); …Run Code Online (Sandbox Code Playgroud) 我有两个约会:
String date_1="yyyyMMddHHmmss";
String date_2="yyyyMMddHHmmss";
Run Code Online (Sandbox Code Playgroud)
我想打印差异如:
2d 3h 45m
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?谢谢!
我想比较我的Android应用程序的两个日期,但我有一个非常奇怪的问题.
例如:
如果我将back in the past日期设置为127天前:
this.dateEvent = System.currentTimeMillis() - (127 * 24 * 3600 * 1000)
Run Code Online (Sandbox Code Playgroud)
然后将其与当前日期(天数之间)进行比较
Calendar sDate = getDatePart(new Date(this.dateEvent));
Calendar eDate = getDatePart(new Date(System.currentTimeMillis()));
int daysBetween = 0;
while (sDate.before(eDate))
{
sDate.add(Calendar.DAY_OF_MONTH, 1);
daysBetween ++;
}
while (sDate.after(eDate))
{
eDate.add(Calendar.DAY_OF_MONTH, 1);
daysBetween ++;
}
return daysBetween;
Run Code Online (Sandbox Code Playgroud)
它将返回22,这完全不是预期的.
我做错了什么,或者这是Calendar班级的问题?
我无法让Joda Time安装和工作.
大多数指令都假设有一定的知识.
有人可以假设我什么都不知道,并指导我,一步一步,把Joda Time zip文件放在哪里,我提取它吗?如何使用eclipse正确添加它以及如何将其导入类文件.
非常感谢!:)
抱歉,如果类似问题被问了太多次,但我找到的每个答案似乎都有一个或多个问题。
我有一个字符串形式的日期:例如:“04112005”
这是约会。2005 年 11 月 4 日。
我想获得当前日期和此日期之间的年数和天数差异。
到目前为止,我的代码获取年份并减去它们:
fun getAlderFraFodselsdato(bDate: String): String {
val bYr: Int = getBirthYearFromBirthDate(bDate)
var cYr: Int = Integer.parseInt(SimpleDateFormat("yyyy").format(Date()))
return (cYr-bYr).toString()
}
Run Code Online (Sandbox Code Playgroud)
但是,自然而然,这是非常不准确的,因为不包括月份和日期。
我尝试了几种方法来创建 Date、LocalDate、SimpleDate 等对象,并使用它们来计算差异。但出于某种原因,我没有让他们中的任何一个工作。
我需要创建当前年、月和日的日期(或类似)对象。然后我需要从一个包含月份和年份(“04112005”)的字符串创建相同的对象。然后我需要得到这些之间的差异,以年、月和日为单位。
所有提示表示赞赏。
date ×4
android ×3
java ×3
datetime ×2
calendar ×1
difference ×1
jodatime ×1
kotlin ×1
string ×1
threetenabp ×1
threetenbp ×1