作者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