从日期中减去一天,格式为 mm/dd/yyyy

Subtract one day from date with format as mm/dd/yyyy

我有一个日期字段被放入 .csv 中,我需要从每个日期中减去一天。这些日期作为字符串变量从一个 csv 中获取,并作为字符串变量放入另一个 csv 中。这些日期的格式都是 mm/dd/yyyy,我需要从每个日期中减去一天。我正在寻找有关如何执行此操作的最佳解决方案。

例如,我的日期是 7/28/2016,我需要转到 7/27/2016。

非常感谢所有帮助,提前致谢。

编辑:我真的很感谢这么快的所有答案,真的最终像第一条评论一样将其分成几个步骤,我本可以使用 JodaTime 答案,但我只是选择了我看到的其他选项。

这是代码:

private String subtractDate(String date) {
        SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
        String returnValue = "";
        try {
            Date newDate = formatter.parse(date);
            Calendar cal = Calendar.getInstance();
            cal.setTime(newDate);
            cal.add(Calendar.DATE, -1);
            Date minusOne = cal.getTime();
            returnValue = formatter.format(minusOne);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return returnValue;
    }

现在一切正常,再次感谢所有的回答。我将接受第一个答案,因为我认为它会起作用,但我只是没有走那条路。

SimpleDateFormat dateFormat = new SimpleDateFormat("mm/dd/yyyy");

Date date = dateFormat.parse("Your date as String");

之后您可以使用 JodaTime 减去一天。

DateTime dateTime = new DateTime(date);

dateTime.minusDays(1); `