黑马程序员技术交流社区
标题:
关于求文件的后缀名
[打印本页]
作者:
宁振庄
时间:
2012-9-23 15:01
标题:
关于求文件的后缀名
本帖最后由 宁振庄 于 2012-9-23 15:58 编辑
看到一道求文件后缀名的题,如test.java.txt,我思路就是用split(".")分割文件名,拿到String数组的最后一个元素就是后缀名了。不过不好使,分割出来的数组好像是空的,报异常了,求各位大大解答。
public class Test {
public static void main(String[] args) {
String FileName = "test.java.txt";
String[] arr = FileName.split(".");
System.out.println("文件后缀名是:" + arr[arr.length-1]);
}
}
复制代码
报了Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1异常
作者:
张忠豹
时间:
2012-9-23 15:22
package com.itheima.test;
public class FileDemo {
public static void main(String[] args) {
String fileName = "test.java.txt";
//split(String regex) : 根据给定 正则表达式 的匹配拆分此字符串 需要对‘.’进行转义'\\.'
String[] arr = fileName.split("\\.");
System.out.println("文件的后缀名是:"+arr[arr.length-1]);
}
}
希望对楼主有帮助
作者:
明光照
时间:
2012-9-23 15:38
在正则表达式中"."代表的是任意字符。所以应该用双反斜扛进行转义
作者:
AngieFans85
时间:
2012-9-23 15:43
public String[] split(String regex)
split()方法中的参数是要求传入一个正则表达式,而"."在正则表达式中表示为任意字符,所以必须用"\\."进行转义.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2