黑马程序员技术交流社区

标题: 如何编写程序获取已知文件的扩展名? [打印本页]

作者: 小周务商    时间: 2014-3-29 10:07
标题: 如何编写程序获取已知文件的扩展名?
编写程序获取已知文件的扩展名. 注意: abc.txt的扩展名是txt, abc.java.txt的扩展名也是txt
作者: 小周务商    时间: 2014-3-29 10:09
我只知道思路是切割后面三位加一个点出来就能得到文件扩展名了。但是不知道如何实现。
作者: osully    时间: 2014-3-29 10:39
String类有split功能

String[] ss = s.split("\\.");
System.out.println(ss[ss.length-1]);

作者: 橡皮-leo    时间: 2014-3-29 11:06
本帖最后由 橡皮-leo 于 2014-3-29 11:08 编辑
  1. public class Test7 {
  2.         public static void main(String[] args) {
  3.                 // TODO Auto-generated method stub
  4.                 System.out.println("结果1:"+getFileExtension("Test7"));//结果:null
  5.                 System.out.println("结果2:"+getFileExtension("Test7.java"));//结果java
  6.                 System.out.println("结果3:"+getFileExtension("Test7..java"));//结果java
  7.                 System.out.println("结果4:"+getFileExtension("Test7.txt.java"));//结果java
  8.         }
  9.         public static String getFileExtension(String fileName)
  10.         {
  11.                 //调用String里面的方法lastIndexOf获取字符串中最后一次出现.的位置
  12.                 //如果为-1则返回空,不为-1则返回.后面的字符串
  13.                 return fileName.lastIndexOf(".")==-1?null:fileName.substring(fileName.lastIndexOf(".")+1);
  14.                 //return fileName;               
  15.         }
  16. }
复制代码

利用String对象的.lastIndexof();方法获取最后一次.出现的位置,然后用substring()方法截取后面的扩展名





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2