| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1356 人关注过本帖
标题:下面批量解压的代码为什么出现没有档案文件被发现
只看楼主 加入收藏
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
结帖率:79.38%
收藏
已结贴  问题点数:20 回复次数:9 
下面批量解压的代码为什么出现没有档案文件被发现
n=adir(filearray,"*.rar")
if n<>0
  for i=1 to n
     *?filearray[i,1]
     
     run /n C:\Program Files\WinRAR\winrar.exe  x -ibck filearray[i,1]  
  endfor
endif  
提示
图片附件: 游客没有浏览图片的权限,请 登录注册

 *?filearray[i,1]
都能显示所有的.rar 文件,为什么会出现上述的提示

[此贴子已经被作者于2017-6-13 23:36编辑过]

搜索更多相关主题的帖子: 批量 代码 出现 档案 文件 
2017-06-13 23:33
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
filearray[i,1] 只是一个数组元素表达式,不是一个文件名。
试试用名字表达式:(filearray[i,1])。
或用宏替换。
2017-06-14 04:16
红星二锅头
Rank: 8Rank: 8
等 级:贵宾
威 望:46
帖 子:491
专家分:754
注 册:2016-8-25
收藏
得分:0 
C:\Program Files\WinRAR\winrar.exe  
是长文件名/路径名,要用引号圈起来,,,

团队红星二锅头,队长王猛,领队李冲,顾问杨伟,副队张挺,外联马彪,内勤韩秀,人事顾闯,财务赵魁,后勤周强
2017-06-14 06:57
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
吹水佬:试试用名字表达式:(filearray[i,1])。
或用宏替换。
红星二锅头:是长文件名/路径名,要用引号圈起来,,,
都修改了都不行,提示
图片附件: 游客没有浏览图片的权限,请 登录注册
2017-06-14 09:19
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
回复 4楼 sylknb
用宏替换试试:
n=adir(filearray,"*.rar")
for i=1 to adir(filearray,"*.rar")
    cFile = filearray[i,1]
    run /n7 C:\Program Files\WinRAR\winrar.exe  x -ibck &cFile
endfor

filearray[i,1]是不含路径的文件名
如果对路径敏感,cFile要加上路径
2017-06-14 10:40
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
如果文件名不符合WinRAR规范,文件名用双引号,如:cFile = ["c:\temp\test - tmp.rar"]
2017-06-14 10:46
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用吹水佬在2017-6-14 10:40:13的发言:

用宏替换试试:
n=adir(filearray,"*.rar")
for i=1 to adir(filearray,"*.rar")
    cFile = filearray
    run /n7 C:\Program Files\WinRAR\winrar.exe  x -ibck &cFile
endfor
 
filearray是不含路径的文件名
如果对路径敏感,cFile要加上路径
成功了,诚心诚意谢谢!
2017-06-14 11:19
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
吹水佬班主“
又要麻烦您了,如果把N个XLS文件分别压缩到已有的N个RAR文件。

n=adir(filearray,"*.rar")
for i=1 to adir(filearray,"*.rar")
    cFile = filearray[i,1]
    *?cFile
   *?JUSTSTEM(JUSTFNAME("&cFile"))
   *?JUSTSTEM(JUSTSTEM(JUSTFNAME("&cFile")))+".dbf"
    run /n7 C:\Program Files\WinRAR\winrar.exe  a -ibck JUSTSTEM(JUSTFNAME("&cFile"))  JUSTSTEM(JUSTSTEM(JUSTFNAME("&cFile")))+".dbf"
endfor
为什么提示
图片附件: 游客没有浏览图片的权限,请 登录注册

附上附件:我的思路是N个rar中已有xls的文件,现在想把N个dbf文件分别压缩到对应的压缩包中去 如bmk065101.dbf 添加到bmk065101.xls.rar,bmk065102.db 添到bmk065102.xls.rar中.....。
ls.rar (943.15 KB)
2017-06-14 13:11
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:20 
回复 8楼 sylknb
一样用宏替换
FOR i=1 TO ADIR(filearray, "*.rar")
    cRAR = filearray[i,1]
    cDBF = LEFT(cRAR, AT(".",cRAR)) + "dbf"
    RUN /N7 "C:\Program Files\WinRAR\winrar.exe" a -ibck &cRAR &cDBF
ENDFOR
2017-06-14 13:47
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用吹水佬在2017-6-14 13:47:47的发言:

一样用宏替换
FOR i=1 TO ADIR(filearray, "*.rar")
    cRAR = filearray
    cDBF = LEFT(cRAR, AT(".",cRAR)) + "dbf"
    RUN /N7 "C:\Program Files\WinRAR\winrar.exe" a -ibck &cRAR &cDBF
ENDFOR
高!实在之高,太感谢!无私的指教,在另一个QQ群中请教要收红包才给你指教,真是一切向钱前。
2017-06-14 14:02
快速回复:下面批量解压的代码为什么出现没有档案文件被发现
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038738 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved