- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
'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 Dec、2008-02 Feb 将在下拉列表中显示给用户。用户无法选择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
并使用 Calendar#getActualMaximum()
获取月份的最后一天并用它设置日期。
启动示例:
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
关于java - 将日期从 "2009-12 Dec"格式转换为 "31-DEC-2009",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3839584/
我必须编写一个程序,将无符号十六进制转换为十进制,将十进制转换为十六进制,将有符号十六进制转换为十进制,将十进制转换为十六进制,而不使用流过滤器“十六进制”和“十进制”。我的程序适用于 hex 到 d
'2009-12 Dec' should be converted to '31-DEC-2009' '2010-09 Sep' should be converted to '30-SEP-2010
我想在串行监视器中写入一个十六进制数,这应该转换为十进制整数。 LCDShield lcd; byte byteR; int color = 0; if (Serial.available()) {
我需要一些帮助,将我从汽车中的 OBD 适配器获得的答案转换为十进制,然后将转换后的任何值添加到公式并打印出来。 private class ConnectedThread extends Threa
我必须编写一个程序来读取 2 个数字中不带 0 的整数,并说明第二个是否由第一个的循环变换构成。例如:4123,3412,2341 和 1234 是由 1234 循环变换而成。现在这是我的代码: #i
Delphi documentation表示可以重载 Inc 和 Dec 运算符;我认为没有有效的方法可以做到这一点。以下是重载 Inc 运算符的尝试;有些尝试会导致编译错误,有些会导致运行时访问冲突
在 Meteor 排行榜示例中有这一行: Players.update(Session.get("selected_player"), {$inc: {score: 5}}); 我怎样才能优雅地减
实际上我猜这个问题是重复的,但我不明白我的 SQL 代码有什么问题。我的错误是 Notice: Undefined index: CI in C:\wamp\www\LOCATIONVIEWER\ex
我有: std::cout << "Start = " << std::dec << (&myObject) << std::endl; 以十进制输出地址。但是,地址仍然是十六进制的?? (我正在为
我想将二进制字符串转换为 dec。 public class HelloWorld{ public static void main(String []args){ Syst
我在 Delphi 2010 中使用 Inc 和 Dec 过程时遇到问题。 这是我的代码片段: if NOT(frmMain.Height = 0) then begin Dec(frmMain.
在反汇编代码中: movsx eax,[address1] # a few fpu computations dec eax # so many fpu computations jz label2
我正在尝试使用 findAndModify 以原子方式更新文档的一个值,根据我的阅读,这在同一文档中是原子的。根据我的单元测试,这些值没有被修改。 我在 Java 中使用 mongoTemplate,
我正在用 C++ 创建一个包含 3 列 Dec Okt Hex 的表格。 输入应该是一个大于或等于1的整数,然后打印一个三列的表格,其中从1到加载的所有整数以十进制、八进制和十六进制指定。 例如我们输
字符串 str_hex 包含字母 A-J 的十六进制值,对应于十进制值 65-74。我正在尝试将每个十六进制值转换为其十进制值 following this example .它适用于 for 循环内
由于本学期我在物理学校学习了数字系统类(class),所以我决定尝试将我们在那里学到的知识应用到我自学的编程实践中。是的,出于某种原因我们根本不这样做。不管怎样,下面是我的代码: #include
00101=5位数字,忽略两个零并计算 0+(5-2-1)^2 = 4 4+(5-3-1)^2 = 5 5+(5-4-1)^2 = 5 最终答案是否正确? char[] charArray = bin
作为练习的一部分,我必须重写一个递归函数,以使新函数不递归。这两个函数都需要将正十进制整数输入转换为它们的等效二进制数。 这是使用递归的代码: void convert(int n) { //recu
此代码将 unsigned long vector 变量 cR1 转换为 NB_ERRORS 数字(在 a 变量中我打印了这些数)。 #include #include #include int
我在将十六进制值转换为带符号的十进制值时遇到问题。我正在使用 Qt,这是示例代码。 #include #include int main(int argc, char *argv[]) {
我是一名优秀的程序员,十分优秀!