本帖最后由 I_am_not_loser 于 2011-09-27 17:10:20 编辑

解决方案 »

  1.   

    你把意思说明白点,似乎文件名当中是不能用*的啊,而且根据文件名称进行过滤,JDK里面已经提供了一些Filter,开源的apache的commons-io也提供了支持你可以举个例子说下你想实现的功能
      

  2.   

    终于看懂你的问题了,其实就是pre = filterstr.substring(0, i - 1)的理解
    i得到的值是对应字符串第一次出现*的下标索引,比如ab*.bmp得到的i值为2
    而String.substring(i,j)方法是返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的 beginIndex 处开始,直到索引 endIndex - 1 处的字符这样你就明白了把,返回的字符串不包括第j个字符的,所以上面用的i而不是i-1,建议你多看看JDK的API,那个讲解的更加具体细致
      

  3.   

    一时没懂楼主在说什么,然后知道是substring的问题,和其他怎么截取pre和ext没啥关系。
    楼主对substring这个方法去查查jdk吧,“左闭右开”。