java如何修改文件 详细信息栏的 最后修改时间?

开源上海 发布于 2019/01/04 15:40
阅读 473
收藏 0

 

 


    public static void main(String[] args) throws Exception {
        File fileToChange = new File("D:/apache-tomcat-6.0.9/lib/tomcat-coyote.jar");
        fileToChange.createNewFile();
        Date filetime = new Date(fileToChange.lastModified());
        System.out.println(filetime.toString());
        long time=Long.parseLong(Date2TimeStamp("2018-12-12 13:12:11","yyyy-MM-dd HH🇲🇲ss"));
        System.out.println(time);
        System.out.println(fileToChange.setLastModified(time));//这里返回true,没效果呀??
        filetime = new Date(fileToChange.lastModified());
        System.out.println(filetime.toString());
    }
    
    /**
     * 日期格式字符串转换成时间戳
     *
     * @param dateStr 字符串日期
     * @param format   如:yyyy-MM-dd HH🇲🇲ss
     *
     * @return
     */
    public static String Date2TimeStamp(String dateStr, String format) {
        try {
            SimpleDateFormat sdf = new SimpleDateFormat(format);
            return String.valueOf(sdf.parse(dateStr).getTime() / 1000);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "";
    }
 

加载中
0
慢慢成长
慢慢成长

String.valueOf(sdf.parse(dateStr).getTime() / 1000);

这里的/1000的问题;删除了就好了;

但你这代码很迷啊,为啥把字符串转为了Date,已经getTime了,还要把getTime给转为字符串,又把字符串转为long?完全是多余的操作啊;Date的getTime的值可以直接设置到setLastModified里面;

希望能帮到你;

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部