作者jason81418 (嘟嘟)
看板C_Sharp
標題[問題] txt文本與資料庫比對問題
時間Thu Jan 17 20:55:24 2013
現在我手上有一個project要做
但是不知道該如何下手
想請問板上的專家
簡單來說,我要拿資料庫欄位資料來比對txt文本內容
看資料庫資料內容是否正確
這個文本txt前身是PDF檔,那我是用PDFBOX的套件轉出來的
問題點1:
目前我都是手動更改PDF的檔名路徑(路徑一樣,但檔名不同)
來轉出成TXT檔,現在我想自動根據資料庫欄位內容轉出成TXT文件
但這邊碰到瓶頸,因為PDF檔名沒有完全跟資料庫欄位內容相同
例如我從資料庫取出一串數字:8546
那這份PDF檔名通常是AB_123_8546_AA.pdf或是AB_12_8546_AA.pdf
就只有約中間是一樣的,有辦法透過類似SQL模糊尋找方式抓到這份PDF檔嗎?
PDDocument doc = PDDocument.load(filepath);
filepath部分該如何才能實現?
問題點2:
同問題點1,假設今天從資料庫抓出3組數字(也有可能是5組或9組等等)
例如:123,456,789(我會用陣列儲存)
那理論上我能夠有3份PDF
在程式上能夠實現跑一次batch,就分開抓取3份PDF,轉出成3份txt文件嗎?
用for迴圈包可以work嗎?
以上謝謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.195.4.61
※ 編輯: jason81418 來自: 123.195.4.61 (01/17 20:55)
1F:推 Eleganse:沒做過 不過既然SQL可以模糊搜尋 那何不在資料庫內建立 01/17 21:17
2F:→ Eleganse:1張表格 寫個程序去掃資料夾內所有檔案的檔案名 01/17 21:18
3F:→ Eleganse:然後針對該張表做模糊搜尋 不就得到所要的檔名了 01/17 21:19
4F:推 Eleganse:問題2我想到的爛方法是把該執行檔另存9次 01/17 21:21
5F:→ Eleganse:每個FOR迴圈執行不同個執行檔 這樣程序就不會打架了 01/17 21:22
6F:→ Eleganse:很趕的話就這樣做掉吧 不趕的話就等看看有無更好方法 01/17 21:23
7F:→ jason81418:資料夾內的檔案沒有全部,應該是這樣說,每天都會來不 01/17 21:33
8F:→ jason81418:同的檔案進到資料夾下,我沒辦法預設先知道檔案名稱, 01/17 21:34
9F:→ jason81418:頂多從資料庫知道,之後可能會有類似AA_B_123_F.pdf的 01/17 21:35
10F:→ jason81418:檔案名稱出現,123是從資料庫抓的 01/17 21:35
11F:推 Eleganse:不懂|| 不知道檔案名稱就去資料夾掃一次不就知道了嗎 01/17 21:39
12F:→ jason81418:我懂你的意思了,那請問我剛如何做到去資料夾下,掃完 01/17 21:45
13F:→ jason81418:全部的檔名,這個我沒實作過,可以幫忙一下嗎? 01/17 21:45
14F:推 Eleganse:網路可以找到所有你要的東西 01/17 21:49
15F:→ Eleganse:keyword: directory,file,msdn,......etc 01/17 21:49