中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-03 08:57
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 文件夹中所有文件内容求和 查看 2,602 回复 31
楼 主 文件夹中所有文件内容求和 发表于 2007-02-05 03:15 ·  中国 山西 太原 电信
初级用户
积分 56
发帖 22
注册 2006-12-13 10:54
19年会员
UID 73399
性别 男
状态 离线
我的想法是
LOG这个文件夹中有USER1——USER99的文件
每个文件中都有不同的数据,每个文件中的数值相加,然后全部导入到FILES.TXT这个文件中,
排列方式,
为USER1 后面跟上这个文件中的和
USER2 后面跟上这个文件中的和
求高手设计
2 发表于 2007-02-05 03:57 ·  中国 辽宁 本溪 联通
银牌会员
★★★
积分 1,212
发帖 464
注册 2006-12-13 21:11
19年会员
UID 73417
性别 男
状态 离线
用VBS写的,把下面的文件保存到LOG文件夹下。

Set ws=CreateObject("wscript.shell")
Set fso=CreateObject("scripting.filesystemobject")
For i=1 To 99
n=sam("user" & i)
m=m & "user" & i & vbtab & n & vbcrlf
Next
Set file=fso.createtextfile("FILES.TXT")
file.write m
file.close
ws.run "notepad.exe FILES.TXT"
Function sam(a)
Set file=fso.opentextfile(a)
s=0
Do While file.atendofstream<>true
h=file.readline
s=s+h
loop
file.close
sam=s
End Function
3 发表于 2007-02-05 07:26 ·  中国 吉林 四平 联通
高级用户
★★★
积分 859
发帖 413
注册 2006-08-14 21:55
19年会员
UID 60532
状态 离线
有没有人,难为楼主写出一个纯的p来?
我想学习一下。
4 发表于 2007-02-05 08:30 ·  中国 山西 太原 电信
初级用户
积分 56
发帖 22
注册 2006-12-13 10:54
19年会员
UID 73399
性别 男
状态 离线
编了好多次了,没有成功,希望版主帮下忙!
5 发表于 2007-02-05 09:30 ·  中国 吉林 四平 联通
高级用户
★★★
积分 859
发帖 413
注册 2006-08-14 21:55
19年会员
UID 60532
状态 离线
有不同的文件,比如txt1-txt99
这里指定了99个文件,也有可能不指定文件,比如一天生成一个txt文件
比如,到今天已经有55个txt文件了,这55个txt文件中,含有数字和对应的名称
比如:水电费:55.55
流动资金:56963
这些都是当天存在txt文件中的。
明天,还有类似的txt批处理生成
,这个bat类似于set /p 请输入今天的水电费:
楼主要求的是求和,我想说,能不能今天的减去昨天的,然后生成一个新的差的txt文件
由于和楼主的想法有点类似,就在这帮顶和发了!!!
6 发表于 2007-02-05 11:32 ·  中国 广东 电信
荣誉版主
★★★★
batch fan
积分 5,226
发帖 1,737
注册 2006-03-10 00:38
20年会员
UID 51697
来自 成都
状态 离线
  在没看到txt1——txt99的具体内容之前,写出的任何代码都是徒劳的,请楼主为写代码的人想一想。
尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
7 发表于 2007-02-05 11:57 ·  中国 吉林 四平 联通
高级用户
★★★
积分 859
发帖 413
注册 2006-08-14 21:55
19年会员
UID 60532
状态 离线
1.txt
内容如下:
水电费:569
合同金:658
外援费:56666
这是昨天的生成的,当然是由一个p生成的:这个bat类似于set /p 请输入今天的水电费:
今天生成2.txt,内容如下:
水电费:985
合同金:985
外援费:633336
想让第二个txt减去第一个txt文件,重新生成一个差的txt
但名称还用哪些 比如,生成的新的txt内容如下
水电费:”这里是差“
依此类推,就是每一天减去前一天的数,生成一份新的报表
8 发表于 2007-02-05 12:28 ·  中国 广东 电信
荣誉版主
★★★★
batch fan
积分 5,226
发帖 1,737
注册 2006-03-10 00:38
20年会员
UID 51697
来自 成都
状态 离线
Originally posted by anqing at 2007-2-4 22:57:
但名称还用哪些

  名称到底用的是什么?如果还使用1~99的话,那当天和上一天的文件如何确定?哎,问了半天都还在问条件,这个帖子挤一点,那个帖子吐一点,来来去去,解决一个问题恐怕得开个讨论会了——如果在下一个回帖中还没有完整的描述的话,我只好把这个帖子锁了。
尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
9 发表于 2007-02-05 12:51 ·  中国 吉林 四平 联通
高级用户
★★★
积分 859
发帖 413
注册 2006-08-14 21:55
19年会员
UID 60532
状态 离线
但名称还用哪些,是指:
水电费:
合同金:
外援费:
其实,就是一个算今天和昨天的差的p?
就是今天的水电费-昨天水电费后,生成一个txt,里面两天的水电费的差,具体格式为:
水电费:(这里今天-昨天的数字差)
因为,每天都要输入一次当天的水电费,外援费等,这些都是每天必须产生的,目地是算一下,当天的支出。算法就是今天-昨天的支出,生成一个txt文件,方便打印。
10 发表于 2007-02-05 23:48 ·  中国 吉林 四平 联通
高级用户
★★★
积分 859
发帖 413
注册 2006-08-14 21:55
19年会员
UID 60532
状态 离线
没人理呀?
11 发表于 2007-02-05 23:54 ·  中国 河北 廊坊 三河市 移动
金牌会员
★★★★
积分 2,725
发帖 1,160
注册 2006-09-23 12:00
19年会员
UID 63486
来自 河北廊坊
状态 离线
建议用excel完成!简单、直接的攻击才是最好、最有效的攻击。
三人行,必有吾师焉。 学然后知不足,教然后知困,然后能自强也。
12 同感 发表于 2007-02-06 00:52 ·  中国 四川 绵阳 江油市 电信
高级用户
★★★
积分 502
发帖 327
注册 2006-12-30 06:01
19年会员
UID 74981
性别 男
状态 离线
看到一半就有同感了--坚决支持楼上的
13 发表于 2007-02-06 00:54 ·  中国 吉林 四平 联通
高级用户
★★★
积分 859
发帖 413
注册 2006-08-14 21:55
19年会员
UID 60532
状态 离线
这个p是有难度,还要计算时间,有时一月是30天,有时31天。
主要是如何提取出前一天的txt,进行减差。
14 发表于 2007-02-06 01:19 ·  中国 北京 朝阳区 联通
金牌会员
★★★★
积分 2,902
发帖 1,147
注册 2006-09-21 12:00
19年会员
UID 63324
性别 男
状态 离线
帮 anqing 兄到某个帖子上找了一段儿:)

(存成 例如: GDATE.VBS 文件)

wscript.echo dateadd("d",-7,date)


上面是取7天前的日期(论坛检索中可以找到原帖)

如果兄要提取1天前的日期,就把7改为1即可~:)


执行调用方法: CSCRIPT GDATE.VBS

也可以在 FOR 中调用上面指令:)
CSCRIPT是VBS脚本解释器:)
    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
15 发表于 2007-02-06 02:12 ·  中国 吉林 四平 联通
高级用户
★★★
积分 859
发帖 413
注册 2006-08-14 21:55
19年会员
UID 60532
状态 离线
我对vbs不太懂,望兄给出完整代码
论坛跳转: