Java 获取文件创建时间2

    package com.dancen.test;  
      
    import java.io.BufferedReader;  
    import java.io.File;  
    import java.io.IOException;  
    import java.io.InputStream;  
    import java.io.InputStreamReader;  
      
    /** 
     * Runtime获取文件创建时间示例 
     *  
     * @author Dancen 
     * 
     */  
    public class FileCreatedDemo  
    {  
        public static void main(String[] args)  
        {  
            try  
            {  
                String fileCreated = getFileCreated("D:\\xiyou.jpg");  
                System.out.println(fileCreated);  
            }  
            catch(Exception e)  
            {  
                e.printStackTrace();  
            }  
        }  
          
        public static String getFileCreated(String path)  
        {  
            if(null == path)  
            {  
                return null;  
            }  
              
            return getFileCreated(new File(path));  
        }  
          
        public static String getFileCreated(final File file)  
        {  
            if(null == file)  
            {  
                return null;  
            }  
              
            String rs = null;  
            final StringBuilder sb = new StringBuilder();  
            Process p = null;  
              
            try  
            {  
                p = Runtime.getRuntime().exec(String.format("cmd /C dir %s /tc", file.getAbsolutePath()));  
            }  
            catch(IOException e)  
            {  
                return rs;  
            }  
              
            final InputStream is = p.getInputStream();  
            final InputStreamReader ir = new InputStreamReader(is);  
            final BufferedReader br = new BufferedReader(ir);  
              
            Runnable runnable = new Runnable()  
            {  
                @Override  
                public void run()  
                {  
                    String data = null;  
                      
                    try  
                    {  
                        while(null != (data = br.readLine()))  
                        {  
                            if(-1 != data.toLowerCase().indexOf(file.getName().toLowerCase()))  
                            {  
                                String[] temp = data.split(" +");  
                                  
                                if(2 <= temp.length)  
                                {  
                                    String time = String.format("%s %s", temp[0], temp[1]);  
                                    sb.append(time);  
                                }  
                                  
                                break;  
                            }  
                        }  
                    }  
                    catch(IOException e)  
                    {  
                        e.printStackTrace();  
                    }  
                    finally  
                    {  
                        try  
                        {  
                            if(null != br)  
                            {  
                                br.close();  
                            }  
                              
                            if(null != ir)  
                            {  
                                ir.close();  
                            }  
                              
                            if(null != is)  
                            {  
                                is.close();  
                            }  
                        }  
                        catch(IOException e)  
                        {  
                            e.printStackTrace();  
                        }  
                    }  
                }  
            };  
              
            Thread thread = new Thread(runnable);  
            thread.start();  
              
            try  
            {  
                thread.join();  
            }   
            catch(InterruptedException e)  
            {  
                e.printStackTrace();  
            }  
              
            if(0 != sb.length())  
            {  
                rs = sb.toString();  
            }  
              
            return rs;  
        }  
    }  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值