A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 Captain_Jack_Sp 于 2013-8-23 21:44 编辑

怎么判断File读取的是什么格式的文件啊????请大神说明

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

6 个回复

倒序浏览
看后缀名
回复 使用道具 举报
我一般都是getName获取全名,然后判断全名的后缀,用String的endWith(),若是怕是文件夹后缀一样,比如**.txt的文件夹,可以先判断是否是文件夹,然后再获取文件的后缀,不知道有没方法直接获取
回复 使用道具 举报
isFile()
          测试此抽象路径名表示的文件是否是一个标准文件
isDirectory()
          测试此抽象路径名表示的文件是否是一个目录
这2个方法就是File类中用来判断文件和文件夹也就是目录的方法

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

回复 使用道具 举报
本帖最后由 一个铃,一颗珠 于 2013-8-23 11:58 编辑

     public static void main(String[] args) {
  File file = new File("E:\\java文档\\commons-logging-1.0.4.jar");
  System.out.println(fileFormat(file));
}
public static String fileFormat(File file){
  if(file.exists()){
   if(file.isFile()){
    String name = file.getName();
    System.out.println(name);
    String afterName = name.substring(name.lastIndexOf("."));
    return afterName;   //返回文件的后缀名来判断文件类型
   }else{
    return "不是标准文件";
   }
  }else{
   return "文件不存在";
  }
}

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

回复 使用道具 举报 1 0
亲  如果问题已解决请把类别改为已解决,谢谢。
回复 使用道具 举报
很简单,用split方法切割最后一个圆点符号“.”
切割完的两部分会返回到数组里,arr[0]是文件名,arr[1]是扩展名
——当然,切割前得先判断是不是文件,要是文件夹那就切不出来了。

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马