- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我目前正在验证生成的 Excel 工作表是否包含正确呈现的“时间戳”,其日期和时间部分位于不同的单元格中,并且其格式已根据语言环境进行了调整。
我的测试用例失败了,因为当我从字符串中读回 Excel 工作表的时间时,夏令时似乎被忽略了。
这是我的 Java 代码:
Date now = new Date();
// [... other code, creating and reading the Excel sheet etc. ...]
// from an Excel sheet
String dateString = cellB2.getStringCellValue(); // e.g., 3.7.2013
String timeString = cellB3.getStringCellValue(); // e.g., 13:38:09
TimeZone tz = TimeZone.getDefault(); // Berlin, CEST
dateFormat.setTimeZone(tz); // dateFormat is result of DateFormat.getDateInstance(DateFormat.MEDIUM, locale); e.g. with locale "cs_CZ"
timeFormat.setTimeZone(tz); // timeFormat is result of DateFormat.getTimeInstance(DateFormat.MEDIUM, locale); e.g. with locale "cs_CZ"
// try to parse the time / date strings using the expected format
Date actualDate = dateFormat.parse(dateString); // e.g., Wed Jul 03 00:00:00 CEST 2013
Date actualTime = timeFormat.parse(timeString); // e.g. Thu Jan 01 13:38:09 CET 1970
// now: e.g. Wed Jul 03 13:38:09 CEST 2013
// actualDateTime: e.g. Wed Jul 03 12:48:07 CEST 2013
Date actualDateTime = new Date(actualDate.getTime() + actualTime.getTime());
assertFalse(now.after(actualDateTime)); // fails
最佳答案
罗伯特,
您的解决方案会奏效,但我认为这就像用一种变通办法解决另一种变通办法,这会使您的代码更加复杂,因此更难维护。为什么不使用具有这种模式的 SimpleDateFormat:
"dd.MM.YYYY kk:mm:ss"
然后,像这样制作一个日期字符串:
String dateTime = cellB2.getStringCellValue() + " " + cellB3.getStringCellValue();
然后你就可以解析了...我没有实际测试过,但它应该给你思路,也许你需要检查模式字符串,这里是引用:
http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html
问候
关于java - 使用 new Date(aDate.getTime() + aTime.getTime()) 创建 Java 日期时忽略夏令时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17447481/
此命令的行为与我预期的不同。 -atime +1 表示“过去 24 小时内访问过的任何内容”,对吗? 输出: find . -type f -atime +1 -name 'installAction
我想创建一个个人数字文件。 我希望能够将数字文件(有些是几年前的,有些是最近的,有些尚未创建的)检查到该文件中,并将它们连同它们的元数据(如 ctime、atime 和 mtime)一起保存。 我希望
我的代码就像 String path = "/home/user/tmp/file1"; Path p = FileSystems.getDefault().getPath(path)
根据documentation , tar 能够保存访问时间,但是当我尝试同样的操作时,它却失败了。有人可以解释一下吗? $$$:~/user1/testtar/source> tar --versi
看起来 Dir.entries("dir") 在 Linux 上更新了 dir 的 atime。 irb(main):042:0> File::Stat.new("/tmp/tmp2").atime
学习 C 并且我正在尝试对 stat() 为 atime/mtime 属性和纳秒精度值返回的变量类型和大小进行直观比较。 我在文件上运行 stat() 并希望从返回的 stat 结构中获取 mtime
我可以使用下面的代码获取上次访问时间。 public Date getLastAccessTime(String filePath) throws IOException { File f =
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
我正在用 Python 编写一个程序,需要比较几个目录的 atime、mtime 和 ctime。为此,我使用了 os.stat("my_directory/")。结果我得到的是一个包含这些时间的字符
如何使用 Go 获取文件的 ctime、mtime、atime 并更改它们? 在 Go 1.1.2 中,* os.Stat 只能获取 mtime* os.Chtimes 可以改变 mtime 和 at
有没有什么方法可以在 os.Chtimes 的文件上只设置 mtime ?我以为我可以将修改后的 mtime 和未修改的 atime 一起传递给 Chtimes,但是 FileInfo 返回 os.S
一些文件系统(例如 ext4 和 JFS)提供纳秒分辨率的 atime/mtime 字段。如何读取 ns 分辨率字段? stat syscall返回第二分辨率的 time_t。 最佳答案 秒分辨率时间
是否可以更改符号链接(symbolic link)的 atime 和 mtime? 我正在尝试使用 utime() 函数(C 代码)更改它,但它更改了目标文件的时间。 如果我这样做了 cp -dpr
我有一个 Python 2.7 程序,它必须创建一个具有过去修改日期的符号链接(symbolic link)。我可以使用 os.symlink() 创建链接,并且 os.utime() 声称可以设置文
即使在支持纳秒分辨率的文件系统(如 ext4)上,Node 的 fs.stat 返回的时间似乎也具有一秒的分辨率。 var fs = require('fs') var stats = fs.stat
我目前正在验证生成的 Excel 工作表是否包含正确呈现的“时间戳”,其日期和时间部分位于不同的单元格中,并且其格式已根据语言环境进行了调整。 我的测试用例失败了,因为当我从字符串中读回 Excel
我正在尝试使用标准的 deno fs 模块,但编译器提示没有 --unstable 标志。 import { writeJson, readJson } from "https://deno.land
我是一名优秀的程序员,十分优秀!