以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- 这段代码还有优化的空间么? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=69423)
|
-- 作者:jinzhengbe
-- 发布时间:2015/6/5 2:16:00
-- 这段代码还有优化的空间么?
For Each File As String In FileSys.GetFiles("C:\\图片\\") Dim f As Io.FileInfo = FileSys.GetFileInfo(File) Dim r As Row = Tables("商品").AddNew r("ppp") = f.name Dim d As String = Tables("商品").Current("bh1") Dim s As String = Tables("商品").Current("cn_name") Dim img1 As image = getImage(file) Dim bmp1 As new bitmap(img1, 150, 150 * (img1.height / img1.width)) bmp1.save("f:\\as2\\" & s & "p.jpeg") bmp1.Dispose
FileSys.CopyFile(file, "f:\\as1\\" & s & "s.jpeg",True ) FileSys.CopyFile(file, "f:\\as\\" & s & ".jpeg",True ) FileSys.CopyFile(file, "f:\\qrcord\\taobao\\" & s & ".tbi",True )
Next
这段代码还有优化的空间么? 是一个按钮的代码 ,每次都要处理 1500以上个数据(倒入的数据) 所以程序会经常 灰屏或者关机
|
-- 作者:baicaocao
-- 发布时间:2015/6/5 8:04:00
--
淘宝啊。试试把tables绘制事件先暂停,循环完再绘制。 bmp1.save("f:\\as2\\" & s & "p.jpeg"),这句应该比较浪费时间。
|
-- 作者:Bin
-- 发布时间:2015/6/5 8:46:00
--
2楼说的有道理 参考帮助 http://www.foxtable.com/help/topics/0401.htm
|
-- 作者:大红袍
-- 发布时间:2015/6/5 9:17:00
--
同时,不要用一个文件夹保存所有的图片,一个文件夹保存每次1500张图片,是恐怖的,如果有几万张,你那个文件夹打开都会很慢。
建议再分文件夹,比如按日期。
|
-- 作者:jinzhengbe
-- 发布时间:2015/6/5 13:40:00
--
非常感谢文件夹建议,已经参考了,
|
-- 作者:jinzhengbe
-- 发布时间:2015/6/5 13:47:00
--
With DataTables("商品") .StopRedraw For Each File As String In FileSys.GetFiles("C:\\图片\\") Dim f As Io.FileInfo = FileSys.GetFileInfo(File) Dim r As Row = Tables("商品").AddNew r("ppp") = f.name Next .ResumeRedraw End With
Dim d As String = Tables("商品").Current("bh1") Dim s As String = Tables("商品").Current("cn_name") Dim img1 As image = getImage(file) Dim bmp1 As new bitmap(img1, 150, 150 * (img1.height / img1.width)) bmp1.save("f:\\as2\\" & s & "p.jpeg") bmp1.Dispose
FileSys.CopyFile(file, "f:\\as1\\" & s & "s.jpeg",True ) FileSys.CopyFile(file, "f:\\as\\" & s & ".jpeg",True ) FileSys.CopyFile(file, "f:\\qrcord\\taobao\\" & s & ".tbi",True )
可以理解为上门的代码么 ? 还是其他的
|
-- 作者:大红袍
-- 发布时间:2015/6/5 14:04:00
--
With DataTables("商品") .StopRedraw For Each File As String In FileSys.GetFiles("C:\\图片\\") Dim f As Io.FileInfo = FileSys.GetFileInfo(File) Dim r As Row = Tables("商品").AddNew Dim d As String = r("bh1") Dim s As String = r("cn_name") Dim img1 As image = getImage(file) Dim bmp1 As new bitmap(img1, 150, 150 * (img1.height / img1.width)) bmp1.save("f:\\as2\\" & s & "p.jpeg") bmp1.Dispose FileSys.CopyFile(file, "f:\\as1\\" & s & "s.jpeg",True ) FileSys.CopyFile(file, "f:\\as\\" & s & ".jpeg",True ) FileSys.CopyFile(file, "f:\\qrcord\\taobao\\" & s & ".tbi",True ) Next .ResumeRedraw End With
|
-- 作者:jinzhengbe
-- 发布时间:2015/6/5 14:56:00
--
非常感谢
|