将日期从“2009-12 Dec”格式转换为“31-DEC-2009”

2024-07-01

'2009-12 Dec' should be converted to '31-DEC-2009'
'2010-09 Sep' should be converted to '30-SEP-2010'
'2010-02 Feb' should be converted to '28-FEB-2010'
'2008-02 Feb' should be converted to '29-FEB-2008'

价值2009年12月12日, 2008 年 2 月 2 日将在下拉列表中向用户显示。用户没有选择的选项DAY.

用户选择的值应传递到数据库。但数据库需要以下格式的日期DD-MMM-YYYY。查询有 '<= USER_DATE' 健康)状况。因此,应自动选择该月的最后一天并将其传递到数据库。

请帮助我编写完成上述工作的函数。

static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM MMM");

    public static String convertMapedToSqlFormat(final String maped) {
        String convertedMaped = null;
        //....
        return convertedMaped;
    }

    @Test
    public void testConvertMapedToSqlFormat() {
        String[] mapedValues = { "2009-12 Dec", "2009-11 Nov", "2009-10 Oct",
                "2009-09 Sep", "2009-08 Aug", "2009-07 Jul", "2009-06 Jun",
                "2009-05 May", "2009-04 Apr", "2009-03 Mar", "2009-02 Feb",
                "2009-01 Jan", "2008-12 Dec", "2008-11 Nov", "2008-10 Oct" };
        for (String maped : mapedValues) {
            System.out.println(convertMapedToSqlFormat(maped));
        }
    }

将其转换为Calendar http://download.oracle.com/javase/6/docs/api/java/util/Calendar.html并使用Calendar#getActualMaximum() http://download.oracle.com/javase/6/docs/api/java/util/Calendar.html#getActualMaximum%28int%29获取该月的最后一天并用它设置该日期。

开球示例:

String oldString = "2009-12 Dec";
Calendar calendar = Calendar.getInstance();
calendar.setTime(new SimpleDateFormat("yyyy-MM").parse(oldString)); // Yes, month name is ignored but we don't need this.
calendar.set(Calendar.DATE, calendar.getActualMaximum(Calendar.DATE));
String newString = new SimpleDateFormat("dd-MMM-yyyy").format(calendar.getTime()).toUpperCase();
System.out.println(newString); // 31-DEC-2009
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将日期从“2009-12 Dec”格式转换为“31-DEC-2009” 的相关文章

随机推荐

  • jQuery 事件在 mouseup 时停止

    我正在尝试制作一个非常简单的应用程序 当鼠标按钮按下时 用户可以使用选定的颜色绘制到表格中 当鼠标松开时事件停止 绘图效果很好 唯一的问题是释放鼠标时事件不会停止 我已经尝试过很多方法 但显然我做错了 还尝试了绑定和取消绑定事件 但也不起作
  • 升级到 Angular v9 并启用 Ivy 后 Angular 编译失败

    我们最近将 Angular 应用程序升级到了最新版本的 Angular Angular v9 我们所有的依赖项也都升级了 ng update 表示我们所有的依赖项都 按顺序 当我们在启用 Ivy 的情况下构建应用程序时 编译过程会失败并出现
  • android下拉刷新列表视图出错

    我正在使用功能下拉来刷新library https github com chrisbanes Android PullToRefresh克里斯班斯的 但是当我尝试在我的 xml 文件中导入这个小部件时 它向我显示以下错误 请帮助我如何解决
  • React Native:找不到变量:需要

    我正在尝试修改一个反应原生样板 https github com rayandrews razzle rnw redux loadable这样我就可以在Android平台上运行了 I installed the expo package a
  • 独立 Spring OAuth2 JWT 授权服务器 + CORS

    所以我有以下浓缩的授权服务器这个例子 https github com dsyer spring security angular blob master oauth2 authserver src main java demo Auths
  • 分页打印所有数据

    我在打印数据表中具有分页的所有数据时遇到问题 我已经做过研究并在此链接中发现了同样的问题 仅打印 https stackoverflow com questions 468881 print div id printarea div onl
  • Erlang 映射:remove/2 和映射:without/2 之间的实际区别

    检查过R17 新功能之一的文档 http www erlang org doc man maps html remove 2 地图 让我看到了maps remove 2 和maps without 2 我能看到的唯一明显的区别是 remov
  • 如何在不重新加载页面的情况下刷新角度8中的元素?

    我正在通过单击按钮更新数据库列 并且我想在单击后更改按钮 如何在不刷新页面的情况下实现这一目标 下面是我的代码 只有当我刷新页面时它才能正常工作
  • django-ckeditor 上传的图像的绝对路径

    我在用django rest framework和这个结合django ckeditor 我正在提供一些带有绝对 url s 的图像 没有任何问题 但是ckeditor上传的图片和文件是相对路径 由于位于不同的域中 因此无法在客户端显示 这
  • 仅调用一次/在 AngularJS 服务中缓存来自 $http get 的数据

    这可能听起来像一个非常简单 愚蠢的问题 但我需要问它 因为我之前没有遇到过这种情况 好吧 我的 angularJS 应用程序中有一项服务 该服务当前包含 4 个方法 它们都执行 80 相同的功能 代码 我希望提高效率 这是我的服务的样子 删
  • Yii 验证场景是否可以在 enableClientValidation 设置为 true 的情况下工作?

    这里使用 Yii 1 1 8 有谁知道 Yii 验证场景是否适用于客户端 Yii 验证 enableClientValidation gt true Yii 将使用您构建表单时设置的场景 因此 无论表单初始化时的情况如何 ActiveFor
  • 更改材质表反应中“操作”的样式

    我一直在我的一个项目中使用材料表 虽然我可以更改用户定义列的样式 字体大小 颜色 但我无法对 操作 列执行此操作 我对更改字体大小特别感兴趣 与分页相同的问题 我需要更改其字体大小 但似乎没有可用的选项 请举一个例子 https mater
  • 创建新文件夹的“Shell 命名空间”方式是什么?

    显然 这对于 win32 api CreateDirectory 来说是微不足道的 但我正在尝试托管一个 IShellView 并且希望以最面向 shell 的方式来做到这一点 我本以为 IShellFolder 中会有一个 createo
  • 如何解决昂贵的定制挂钩?

    众所周知 规则是 仅在顶层调用挂钩 不要在循环 条件或嵌套函数内调用 Hook 所以我的问题是如何使用和设计一个昂贵的定制挂钩 鉴于这个钩子 const useExpensiveHook gt some code that uses oth
  • 指示 GDB 6.5 使用目标文件中嵌入的源代码

    我一直在努力让GNU gdb 6 5 14在调试时使用嵌入在目标文件中的源代码 而不是扫描某些目录 主要原因是我是为嵌入式平台开发的 并且是交叉编译的 这意味着所有源代码都在我的电脑中 我读到了关于 ggdb3标志 其中包含许多额外信息 包
  • 在 Firefox 中访问第三方 cookie

    我们正在工作中使用 iframe 方法构建 Facebook 应用程序 为了使应用程序正常工作 需要在 iframe 内设置 cookie Safari 默认禁用第三方 cookie 因此我们目前将整个浏览器重定向到我们的服务器 设置跟踪会
  • 使用 Django Rest Framework Serializers 时转换数据的推荐方法

    使用 Django Rest Framework 序列化程序时 推荐的数据转换方式是什么 例如 input companyName Acme inc id 2 parent id 1 期望的输出 name Acme inc id 2 par
  • react-native:“adb”未被识别为内部或外部命令、可操作程序或批处理文件

    我是反应原生 Android 应用程序开发的新手 请帮我解决这个问题 我无法运行我的第一个应用程序 收到错误如下adb is not recognized as an internal or external command operabl
  • R hdf5数据集写错了?

    当我执行以下命令时 我的 预测器 数据集已正确填充 library rhdf5 library forecast library sltl library tseries fid lt H5Fcreate output file TODO
  • 将日期从“2009-12 Dec”格式转换为“31-DEC-2009”

    2009 12 Dec should be converted to 31 DEC 2009 2010 09 Sep should be converted to 30 SEP 2010 2010 02 Feb should be conv