Android中获取文件的相关信息和获取时间差

参考网址:https://blog.csdn.net/liumeng920/article/details/79412784

https://blog.csdn.net/u012184853/article/details/51144194

获取文件相关信息

private void initView() {  
        // TODO Auto-generated method stub  
        mTextView = (TextView) findViewById(R.id.textview);  
        File f = new File(path);  
        if (f.exists()) {  
            FileInputStream fis = null;  
            try {  
                fis = new FileInputStream(f);  
                String time = new SimpleDateFormat("yyyy-MM-dd")  
                        .format(new Date(f.lastModified()));  
                System.out.println("文件文件创建时间" + time);  
                System.out.println("文件大小:" + ShowLongFileSzie(f.length()));// 计算文件大小  
                                                                            // B,KB,MB,  
                System.out.println("文件大小:" + fis.available() + "B");  
                System.out.println("文件名称:" + f.getName());  
                System.out.println("文件是否存在:" + f.exists());  
                System.out.println("文件的相对路径:" + f.getPath());  
                System.out.println("文件的绝对路径:" + f.getAbsolutePath());  
                System.out.println("文件可以读取:" + f.canRead());  
                System.out.println("文件可以写入:" + f.canWrite());  
                System.out.println("文件上级路径:" + f.getParent());  
                System.out.println("文件大小:" + f.length() + "B");  
                System.out.println("文件最后修改时间:" + new Date(f.lastModified()));  
                System.out.println("是否是文件类型:" + f.isFile());  
                System.out.println("是否是文件夹类型:" + f.isDirectory());  
                mTextView.setText("文件文件创建时间:" + time + "\n" + "文件大小:"  
                        + ShowLongFileSzie(f.length()) + "\n" + "文件名称:"  
                        + f.getName() + "\n" + "文件是否存在:" + f.exists() + "\n"  
                        + "文件的相对路径:" + f.getPath() + "\n" + "文件的绝对路径:"  
                        + f.getAbsolutePath() + "\n" + "文件可以写入:" + f.canWrite()  
                        + "\n" + "是否是文件夹类型:" + f.isDirectory());  
            } catch (Exception e) {  
                e.printStackTrace();  
            }  
        }  
    }  
  
    /**** 
     * 计算文件大小 
     *  
     * @param length 
     * @return 
     */  
    public String ShowLongFileSzie(Long length) {  
        if (length >= 1048576) {  
            return (length / 1048576) + "MB";  
        } else if (length >= 1024) {  
            return (length / 1024) + "KB";  
        } else if (length < 1024) {  
            return length + "B";  
        } else {  
            return "0KB";  
        }  
    }  

获取两个时间的时间差

//此方法计算的是两个时间点相差几个月
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
String str1 = "2012-02";
String str2 = "2010-01";
Calendar bef = Calendar.getInstance();
Calendar aft = Calendar.getInstance();
bef.setTime(sdf.parse(str1));
aft.setTime(sdf.parse(str2));
int result = aft.get(Calendar.MONTH) - bef.get(Calendar.MONTH);
int month = (aft.get(Calendar.YEAR) - bef.get(Calendar.YEAR)) * 12;
System.out.println(Math.abs(month + result));   
发布了19 篇原创文章 · 获赞 15 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/aidou1314/article/details/96841411
今日推荐