2012-04-02 27 views
0

相關所以這不工作不急:使用ColdFusion找到我的音樂

我發現一個帖子雷卡姆登here將遞歸特定的文件夾路徑。我想擴展它以搜索我的電腦中的音樂文件。我知道我有重複,如果我能找到這些文件,我可以刪除它們。

最終,我想建立一個音樂庫/目錄,這樣我就可以停止兩次購買相同的音樂(或在某些情況下三次 - 我尷尬承認,但它是這樣)。我曾想過編寫一個MS-DOS腳本來搜索結果並將結果輸出到文件,然後遍歷文件以將內容存儲到數據庫中。這似乎是一個比CF能做的更快的過程,更不用說腳本不會遇到'java.lang.OutOfMemoryError:Java heap space'問題了。

如果你知道類似的東西已經存在,你可以發佈一個鏈接或給我你的兩美分哪一種更好?我有幾臺驅動器,我已經購買了多年的新計算機,並且幾乎所有的驅動器都有廢話,因爲其中有些驅動器現在是我的備份驅動器。

+0

如果我去MS-DOS路由,我只知道DIR或TREE命令。有沒有更好的方法來搜索硬盤(通過ms-dos)比這些方法之一? – HPWD 2012-04-02 18:08:17

+2

除非這是爲了好玩,否則爲什麼要重新發明輪子? [查找並刪除重複的歌曲,Mp3,iTunes,iPod和音樂文件。](http://www.ashisoft.com/duplicate-songs-finder.htm) – 2012-04-02 18:08:38

+0

@JamesHill - 這是爲了好玩,但一旦我得到這個調整對於音樂,我也想爲我的電影,視頻等做這個。然後,我要做的就是創建一個網頁離我的網站,以便下次我在百思買,Block Buster,無論如何可以搜索我的數據庫,並確保我沒有電影,視頻,歌曲等。但是,再次,是的,這是爲了好玩。 – HPWD 2012-04-02 19:07:38

回答

0

我最終使用ms-dos批處理文件來掃描驅動器,使用以下開關dir /s /b *.mp3 *.wma *.m4a *.flac *.mp4 *.m4a *.m4v *.mp3PRO *.mp2 *.wav > music_files.txt,然後只是對該文件執行循環並將記錄插入到我的sql數據庫中。我可以用我的視頻再次做到這一點 - 我發現我的婚禮視頻6次(大聲笑)。我不想像Ray Barone那樣在錄像中錄下超級碗,我想。 :)

祝您有美好的一天。

1
<cfdirectory action="list" recurse="yes" directory="c:/" query="MyFiles> 

<cfloop query="MyFiles"> 
    <cfif RIGHT(MyFiles.name,4) EQ ".mp3"> 
     <!--- DUMP DATA TO DATABASE----> 
    </cfif> 
</cfloop> 

然後使用sql查詢來查找重複的文件。

+0

在較小的驅動器上,這可能會起作用。我發現的是,根據遞歸所有目錄所需的數量或處理過多地返回「垃圾」。換句話說,即使增加了java堆內存,我也得到了一個java堆錯誤消息。 – HPWD 2012-04-03 13:32:55

+0

您可以在不遞歸的情況下運行cfdirectory,然後使用單獨的查詢循環更深和更深。也許在某些排除條件下構建,以忽略你知道你不會存儲文件的文件夾(即:C:/ Windows)。 – 2012-04-03 14:06:03