String 中的 Java Date 对象无法正常工作

2023-11-25

我遇到了一个似乎无法解决的顽固问题。我在 stackoverflow 上寻找解决方案,并找到了很多关于 Java 日期格式化的帖子,但没有具体针对我遇到的问题。

基本上,我需要将日期字符串转换为 java.util.Date 对象。我正在使用 Date 和 SimpleDateFormat 类。对于我遇到的大多数约会来说,它都工作得很好。但对于某些日期,它可以工作,但会改变实际日期。两个示例日期是:

2012 年 2 月 24 日星期五 16:45:40 PST 2012 --> 更改为 --> 2012 年 1 月 6 日星期五 16:45:40 PST 2012

2012 年 6 月 13 日星期三 10:00:42 PDT 2012 --> 更改为 --> 2012 年 1 月 4 日星期三 09:00:42 PST

知道为什么日期会改变吗?有什么方法可以轻松避免这种情况或以不同的方式做到这一点?我的代码复制如下。你可以尝试看看我在说什么。

提前致谢!

您可以使用以下 JSP 代码尝试此操作:

<%@ page import="java.util.*" %>
<%@ page import="java.net.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.text.*" %>

<%
String dateStr = "";
Date tmpDate = null;
DateFormat formatter = new SimpleDateFormat("EEE MMM dd HH:mm:ss z YYYY");

System.out.println("First Test ---------------");
dateStr = "Fri Feb 24 16:45:40 PST 2012";
tmpDate = (Date) formatter.parse(dateStr);
System.out.println("Original:"+dateStr+":");
System.out.println("Date Obj:"+tmpDate.toString()+":");

System.out.println("Second Test --------------");
dateStr = "Wed Jun 13 10:00:42 PDT 2012";
tmpDate = (Date) formatter.parse(dateStr);
System.out.println("Original:"+dateStr+":");
System.out.println("Date Obj:"+tmpDate.toString()+":");

%>

我得到以下输出:

First Test ------------
Original:Fri Feb 24 16:45:40 PST 2012:
Date Obj:Fri Jan 06 16:45:40 PST 2012:
Second Test -----------
Original:Wed Jun 13 10:00:42 PDT 2012:
Date Obj:Wed Jan 04 09:00:42 PST 2012:

在格式字符串中使用 yyyy 而不是 YYYY。

YYYY是一个很特别的东西,日历周年。

See the SimpleDateFormat文档以获取更多信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

String 中的 Java Date 对象无法正常工作 的相关文章

  • 仅使用公钥在 HD 钱包中生成以太坊地址 (bitcoinj/web3j)

    我尝试为使用 bitcoinj 库实现的 HD 钱包密钥生成以太坊地址 但我感到困惑 DeterministicSeed seed new DeterministicSeed some seed code here null 1409478
  • 使用 JavaScript 与 Web 服务器通信的 Applet 是否可以迁移到 JWS?

    只是分享一些信息 希望对社区有用 由于各种浏览器停止支持插件 Applet 的可用性已经下降 Google 已决定停止对 NPAPI 插件的支持 EDGE 不支持插件 Firefox 也不鼓励使用插件 Mozilla 可能会跟进该套件 我们
  • 如何将完整的日期格式拆分为日期和时间?

    我有很多格式为我的示例所示的字符串 我必须解析它们 我正在尝试确定今天是哪根弦 我的问题是 时间快到了 我只需要比较那个日期 接下来我想检查时间是否在 after 和 before 的两个时间戳 HH mm ss 之间 但存在问题 日期几乎
  • 如何在 Perl 中使用 use strict 一次一行处理多行字符串?

    我正在尝试找出 PBP 批准的正确方法来一次一行处理多行字符串 许多 Perl 编码人员建议将多行字符串视为文件句柄 除非您在脚本中使用 use strict 否则它可以正常工作 然后 您会收到编译器发出的警告 提示在使用严格引用时无法使用
  • Android:TelephonyManager 类

    我不明白为什么 API 文档中这么写TelephonyManager类是public 但是当我尝试创建一个实例时 它说它不是公共类 并且无法从包中访问 我看到它也说使用Context getSystemService Context TEL
  • NIO 直接缓冲区何时以及如何被释放?

    我有一个 C 库 需要一个临时缓冲区作为暂存空间 我正在考虑将直接字节缓冲区的地址传递给它 在最终释放缓冲区之前 是否允许虚拟机重新定位缓冲区 JNI 框架消失后 本机库将保留该指针 我的理解是 JNI 本地对象引用无法缓存 因为 VM 可
  • JTree ConvertValueToText 返回在更改时被截断

    我有一个自定义树实现convertValueToText 此实现取决于某些全局状态 如果返回的字符串比先前返回的字符串更长 实际上我认为更宽 因为以像素为单位触发它 则文本将被截断并用 填充 当重绘是由 取消 选择元素或某个元素引起时 情况
  • 在 libgdx 中渲染 box2d

    我有一个使用 FitViewport 的大小为 800x480 的游戏世界 并且最初使用像素渲染 box2d 实体 固定装置 因此所有物理效果都显得浮动且缓慢 查看文档后 我意识到 box2d 使用度量单位 因此我将 box2d 位置和大小
  • Eclipse RCP - 将视图与编辑器区域堆叠?

    在开发 Eclipse RCP 应用程序时 是否可以将视图与编辑器区域堆叠在一起 像这样 我有多个列表 表格 我想创建一种预览组合 当通过单击鼠标选择列表上的项目时 我希望我的预览合成显示该项目的数据 如果用户双击某个项目 我想在预览合成后
  • 在 java 8 下使用泛型出现类型错误,但在 java 7 下则不然

    我有一段代码可以在 java 7 下编译良好 但不能在 java 8 下编译 这是一个独立的重现示例 我已经采用了显示此问题的真实代码并删除了所有实现 import java util Iterator class ASTNode
  • java.lang.ClassNotFoundException: org.jboss.logging.Logger

    我有一个奇怪的问题 我有一个JMS https en wiktionary org wiki JMS客户端应用程序和MDB https en wikipedia org wiki Enterprise JavaBeans Message d
  • Log4j 2.0 中发现 ClassNotFoundException

    我已经设置了 log4j12 api beta2 jar 的构建路径 但它给出了 以下错误请帮我解决这个问题我的代码如下 java 文件 package com sst log4j class Product private int pro
  • SQlite 获取最近的位置(带有纬度和经度)

    我的 SQLite 数据库中存储有纬度和经度的数据 我想获取距我输入的参数最近的位置 例如我当前的位置 纬度 经度等 我知道这在 MySQL 中是可能的 并且我已经做了相当多的研究 SQLite 需要一个自定义外部函数来实现半正弦公式 计算
  • 在 Apache Servicemix 4 中的 OSGi 包之间共享配置文件?

    有人能够在 SMX4 中的两个或多个捆绑包之间成功共享配置吗 我正在寻找的是这样的 有一个文件 SMX HOME etc myconfiguration cfg 使此配置 可用 以便使用 Spring dm 通过 OSGi 配置管理将其注入
  • gwt 文本框添加更改处理程序

    我有一个从设计师那里收到的文本框 但是我在 GWT 中编写了操作 问题是文本框为空 但是当通过按下按钮用值填充文本框时 将显示警报框 通知值已更改 但没有成功 帮助我 TextBox zip1 null function onModuleL
  • 将一个整数从 C 客户端发送到 Java 服务器

    我使用此代码将一个整数从我的 Java 客户端发送到我的 Java 服务器 int n rand nextInt 50 1 DataOutputStream dos new DataOutputStream socket getOutput
  • 在Java内存管理中,“PS”代表什么?

    每当我看到 Java 中对内存的引用时 各种空格总是以 PS 为前缀 PS 是什么意思 它开始困扰我 到目前为止我唯一的猜测是 泳池空间 但这将是多余的 例子 PS伊甸园空间 PS 幸存者空间 PS 终身空间 老一代 PS Perm Gen
  • Eclipse 如何创建一个未解决编译问题的类?

    当我尝试使用 javac 编译此类时 出现编译错误并且未创建 Test class public class Test public static void main String args int x 1L lt this cannot
  • Spring-roo REST JSON 控制器损坏日期字段

    我有一个以两种方式使用的数据实体 我在页面加载时用其中的一些数据填充表格 当您单击该列的一行时 我通过 AJAX 获取该项目的详细信息并将其显示在表单字段中 我在服务器端使用 Spring Roo 生成的 REST 端点 在客户端使用 Ba
  • Java有没有类似微软CHESS的工具?

    是否有类似于 Microsoft 的现有 Java 工具CHESS http research microsoft com chess 或者 CHESS 源代码是否开放 以便我可以尝试将其转换为 Java 谷歌的织线工 http code

随机推荐

  • 服务器端文件浏览

    我正在开发一个 Web 应用程序 它从一组文本文件中读取数据并将其映射到 MySQL 数据库 目前 该表单需要手动输入文件路径 但我想向该字段添加一个文件选择器 以使该部分的设置不那么繁琐 我找到的解决方案都允许选择单个文件 但我正在寻找一
  • 如何使用 Selenium 自动化 Firefox Mobile?

    我需要在 Firefox Mobile 中运行 Selenium 测试 有人能描述一个简单的方法来做到这一点吗 我的调查表明 Firefox 移动版不受支持Appium one two Firefox Desktop has built i
  • 通过获取每个子项的位置动态地将子项添加到 LinearLayout

    我在获取孩子的位置时遇到问题线性布局 首先 我动态添加一些按钮 然后尝试返回每个子项的索引并将其显示到TextView 我在这里分享代码 java源代码 private String categories private LinearLay
  • 使用 Sass 从媒体查询中扩展选择器

    我有一个项目类和一个紧凑的 修饰符 类 item item compact styles to make item smaller 这可以 不过 我想添加一个 media强制的查询 item当屏幕足够小时 类要紧凑 乍一看 这就是我试图做的
  • 向场景添加灯光没有效果

    我刚刚开始玩 Three JS 但我一开始就陷入困境 当我向场景添加灯光时 它没有任何效果 renderer new THREE WebGLRenderer camera new THREE PerspectiveCamera 45 Vie
  • 使用“cv::inRange”(OpenCV) 选择正确的 HSV 上下边界进行颜色检测

    I have an image of a coffee can with an orange lid position of which I want to find Here is it gcolor2 utility shows HSV
  • Shift-Tab 在 Emacs 中产生神秘错误

    我正在尝试学习org mode当我退出 emacs 时 注意到我的文件被整齐地折叠起来 按下时S TAB在尝试展开整个文件时 我在迷你缓冲区中收到以下错误消息 M z is undefined 谷歌搜索错误没有帮助 知道打嗝发生在哪里以及如
  • jstree 类型插件不显示自定义图标

    我有一个简单的 HTML 布局 如下所示 div ul li a href some category 1 a ul li a href some text a li ul ul li a href some text a li ul li
  • 在多个子图上反映事件处理

    我正在尝试创建一个包含 4 个子图的交互式图 理想情况下 单击其中一个子图将在其余子图中产生相同的结果 镜像单击 到目前为止 我只能单独单击它们并使用 mpldatacursor 获取特定数据 在此图中 单击事件将导致所有 4 个图表显示
  • 使用 Toolkit 时 Windows Phone 7 页面转换非常慢

    我遇到的问题是 每当我使用 Windows Phone 7 Toolkit 中的页面转换时 转换速度非常慢 并且整个应用程序似乎有框架掉落 动画 结结巴巴 还有其他人遇到过这种情况吗 我正在使用TransitionFrame类作为 Root
  • django 过滤器 icontains 仅匹配整个单词

    我正在使用过滤器 icontains 来搜索单词 但我只希望它匹配整个单词 例如如果我寻找肝脏 我不希望它返回 我的查询看起来像这样 MyModel objects filter title icontains search word 我见
  • 如何动态创建可在父作用域中访问的函数?

    这是一个例子 function ChildF Creating new function dynamically DynFEx function DynF Hello DynF Invoke Expression DynFEx Callin
  • 计算运输箱尺寸的粗略估计

    我正在尝试找到计算运输所需的箱子尺寸的最佳方法 我有 3 个不同尺寸的集装箱 我在数据库中定义了产品的宽度 长度 深度和质量 我想知道如何找到需要运输的最小箱子数量 以及考虑到购物车中的物品数量 这些箱子的最小尺寸 我当前的 想法 是找到整
  • 常数的哪一个性质使其不可改变?

    今天我面临一次面试 其中有一个问题对我来说非常棘手 面试官说 如何让常数能够改变它的值 我回答 使用指针 并向他展示了一个例子 int main void const int a 3 int ptr ptr int a printf A d
  • PHP、Postgres 帮助使用 RETURNING

    我想我了解 PostgreSQL 和 RETURNING 的工作原理 我找到了很多很多资源 如果我明白的话 它会看起来像 INSERT INTO table column2 column3 VALUES value1 value2 RETU
  • 如何在 Windows 上设置 cmake CXX 变量

    我收到以下错误 正在使用 Microsoft Windows 版本 6 1 7601 ErrorS CMake Warning at CMakeLists txt 4 project To use the NMake generator c
  • Android:打开活动而不保存到堆栈中

    我有 2 个活动 主要活动和列表活动 从 Main 你可以打开 List 从列表中您可以打开Main 我希望列表的每次打开都能如此not被保存到 历史 中 所以 从 Main 返回cannot返回列表 是否可以 当开始你的清单时Activi
  • libc.so.6 在 Linux 内核中的相关性 [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我的问题是Linux内核是否包含libc so 6 经过谷歌搜索并浏览不同的链接后 我们发现libc so 6 不是 Linux 内核的一部分 因为内核在内核空间中为自己的使用而实现
  • JUnit 测试类未显示在 JMeter 中

    我正在尝试使用 JMeter 2 7 运行 JUnit 测试 但是 当在 JUnit 采样器的下拉列表中选择测试类时 它们不会显示 据我发现 这是因为测试类是从另一个类扩展的 AbstractJUnit4SpringContextTests
  • String 中的 Java Date 对象无法正常工作

    我遇到了一个似乎无法解决的顽固问题 我在 stackoverflow 上寻找解决方案 并找到了很多关于 Java 日期格式化的帖子 但没有具体针对我遇到的问题 基本上 我需要将日期字符串转换为 java util Date 对象 我正在使用