java重命名文件(附道客巴巴文檔下載方法) – JAVA編程語言程序開發技術文章

今天,朋友給我一個道客巴巴的地址,讓我幫她下載那篇文章,看瞭下800積分,8RMB呀。。。
註冊個帳號 才送50積分
所以,就打開瞭歪主意》》》
先想在網上找找看有沒有下載器之類的。可惜,沒有找到。。。
再想到截圖,但是一張一張 截圖保存 會死人的 ,180頁吶。。。
=====================================================
於是,按照下面的方法截圖
1、下載一個叫做HyperSnap的軟件,在截圖後可以自動保存的軟件。省去瞭截圖後保存的步驟;
2、設置電腦屏幕將截圖後的效果設置到盡可能地好;
  a、用F11將瀏覽器最大化,然後通過道客巴巴的切換全屏按鈕將文檔切換到最大化;  
  b、電腦正常顯示一頁顯示不下,用顯卡的顯示旋轉功能將屏幕顯示旋轉90°。
  c、通過HyperSnap設置好熱鍵和圖片保存路徑,開始進行截圖。180頁,也就是不到2分鐘的事。
截出來的圖需要放在word裡打印,所以用word的圖片,添加功能一次性將180張圖片就加入word中,結果按照文件名,將snap1添加到瞭最後一頁,比較扯,雖然打印出來反著訂起來不影響閱讀,但是不打印的情況下就得從最後一頁往前看,糾結……
所以,想到寫一個批量修改文件名的程序,將文件名批量修改下,是的批量添加後可以不用倒著看》》》
======================================================
首先,查到java裡文件重命名的方法為:renameTo();
具體參見java API……
我將180張圖片放在d:\\backup下,用下面的程序進行重命名:
 1 public void reName(){
 2         String dir = "D:\\backup\\";
 3         File file = new File(dir);
 4         String fileName[] = file.list();
 5         int number = fileName.length;
 6         File newFile[] = new File[number];
 7   
 8         System.out.println("number = " + number);
 9         for(int i=0; i<number; i++) {
10             System.out.println((i+1) + ":" + fileName[i]);
11             newFile[i] = new File(dir+fileName[i]);
12         }
13         System.out.println("============分割線=============");
14         for(int i=0; i<number;i++){
15             boolean flag = newFile[number – (i+1)].renameTo(new File(dir + (i+1)+".bmp"));
16             if(flag){
17                 System.out.println("重命名成功"+(i+1));
18             } else {
19                 System.out.println("失敗");
20             }
21         }
22     }

PS:java重命名失敗的原因主要有以下幾個:
1.源文件不存或不可寫。
2.目標文件已存在。
3.源文件和目標不是在同一個盤時,不同的盤的文件格式是否相同。
下面是一個將待修改文件名和修改目的文件名分別存入數組中進行重命名的行為,比較不實用,應該將第一個參數改成目錄名就好些瞭,不過,意思到就行瞭, ^-^
 1 /**
 2      *
 3      * @param from 保存需要修改的文件名數組
 4      * @param to  保存修改後的文件名數組
 5 *//www.aiwalls.com
 6     public void reName_1(String from[], String to[]){
 7         int fileLength = from.length;
 8         boolean flag = false;
 9         boolean isOk = false;
10         int count = 0;
11         if(fileLength != to.length){
12             System.out.println("傳入數組長度不一致,故不進行重命名操作");
13             return;
14         }else{
15             for(int i=0;i<fileLength;i++){
16                 for(int j=0;j<fileLength;j++){
17                     if(from[i].equals(to[j]) ){
18                         flag = false;
19                         System.out.println("error:存在相同文件名,系統拒絕重命名操作");
20                         return;
21                     }else{
22                         flag = true;
23                     }
24                 }
25             }
26             if(flag){
27                 System.out.println("開始進行文件重命名工作》》》");
28                 for(int i=0;i<fileLength;i++){
29                     isOk = new File(from[i]).renameTo(new File(to[i]));
30                     if(isOk){
31                         System.out.println("弟" + (i+1) +"個文件重命名成功");
32                         count++;
33                     }
34                 }
35                 if(count == fileLength){
36                     System.out.println("全部重命名成功");
37                 }else{
38                     System.out.println("存在重命名未成功的文件,請人工查看更改");
39                 }
40             }
41         }
42     }

本來還想寫個批量修改按照mp3文件的文件信息修改名稱為:歌手+文件名的。
不過讀取mp3文件信息還不清楚怎麼搞,大概看瞭下 有開源的jar包,有時間看看那個jar包是怎麼寫的 再說瞭,天晚瞭,該吃飯瞭。。。
從來沒有什麼能夠阻擋我前進的步伐,今天沒有,明天也不會有。

 摘自   Icer's Cpu

發佈留言