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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 孙新强 中级黑马   /  2012-7-13 15:49  /  1300 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

麻烦大家帮忙改一下
import java.io.File;


public class tt {

        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                File   file=new   File("D\\jad");   //指定文件名及路径   
        File[] files = file.listFiles();
        for(File f:files){         
        String   filename=f.getName();     
        if(filename.indexOf(".")>=0)     
        {     
            filename   =   filename.substring(0,filename.lastIndexOf("."));     
        }     
        f.renameTo(new   File(filename+".jad"));   //改名      
      

      }
        }

}

5 个回复

倒序浏览
file.getName().substring(0,file.getName().lastIndexOf('.'))+".jad"));
回复 使用道具 举报
首先不看别的,楼主有个习惯很不好,类名为tt,这个习惯非常的不好,类名的首字母应该大写
回复 使用道具 举报
public static void main(String[] args) {
               
            File   file=new   File("D:\\jad");   //文件路径错了,要“:”         
            File[] files = file.listFiles();
           for(File f:files){         
        String   filename=f.getName();     
                          
        filename   =   filename.substring(0,filename.lastIndexOf("."));     
        //这里不用if判断,是文件都有后缀名,所以直接逆向查找就好                  
         f.renameTo(new   File(filename+".jad"));   //改名      
         
            }
}
回复 使用道具 举报
建议楼主最好判断一下文件名称是不是路径,然后使用迭代
回复 使用道具 举报
陆强强 发表于 2012-7-13 16:08
public static void main(String[] args) {
               
            File   file=new   File("D:\\jad ...

谢谢啊 我看到了 但是 改过后 程序运行后jad文件夹中没有文件了  麻烦在问一下怎么回事

点评

renameTo 重命名操作无法将一个文件从一个文件系统移动到另一个文件系统 这是API文档的描述,很关键。所以必须加上目录,不然改后就是两个文件夹  发表于 2012-7-13 17:11
String filename=f.getPath(); 用路径不然f.renameTo(new File(filename));改完后不知道被系统丢哪儿去了  发表于 2012-7-13 17:08
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马