![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 07:12 |
共 48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 把文本内容横列变纵列。 |
| 可打印版本 1,802 / 17 |
| 第1楼 pusofalse | 发表于 2008-04-23 20:34 |
| 银牌会员 发帖 646 积分 1,604 | |
|
把文本内容横列变纵列。 根据26933062前辈的问题想出来的~
a.txt: aaaabbbbccccddddeeeeffffgggghhhhiiiijjjjkkkkllllmmmmnnnnooooppppqqqqrrrrssssttttuuuuvvvvwwwwxxxxyyyyzzzz 输出为: abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz [ Last edited by pusofalse on 2008-4-23 at 08:36 PM ] |
|
| 第2楼 dreamseed | 发表于 2008-04-23 21:05 |
| 初级用户 发帖 10 积分 38 来自 GZ | |
|
除非像所述的格式那么工整,否则没法逆转,将会出现多解。
|
|
| 第3楼 26933062 | 发表于 2008-04-23 21:09 |
| 银牌会员 发帖 879 积分 2,268 | |
|
:
[ Last edited by 26933062 on 2008-4-23 at 09:10 PM ] |
|
| 第4楼 pusofalse | 发表于 2008-04-23 21:16 |
| 银牌会员 发帖 646 积分 1,604 | |
Originally posted by 26933062 at 2008-4-23 09:09 PM: |
|
| 第5楼 bat-zw | 发表于 2008-04-23 21:34 |
| 金牌会员 发帖 1,276 积分 3,105 | |
| 第6楼 26933062 | 发表于 2008-04-23 21:48 |
| 银牌会员 发帖 879 积分 2,268 | |
|
这回对了吧
|
|
| 第7楼 bat-zw | 发表于 2008-04-23 21:51 |
| 金牌会员 发帖 1,276 积分 3,105 | |
Originally posted by 26933062 at 2008-4-23 21:48: |
|
| 第8楼 bat-zw | 发表于 2008-04-23 22:02 |
| 金牌会员 发帖 1,276 积分 3,105 | |
Originally posted by dreamseed at 2008-4-23 21:05: a.txt 运行我的代码,结果如下(自己试): vfwdmwcwnifcpxeaghocfqqiuvzfilcpqiuripuglajjtrvrpuu yhiqhahalobgmfeyngxxcnbcrwsypwrualfyxbfxlhkjnnfvgv dqrqafcptnamlzdfaqbojrzctpvpnftcnbuiuoswvftdmrixgj uvkjdhvkyawnlcdmwnnfnuufsskzrzyzslgttpuegkdsjwames 请按任意键继续. . . 附a.txt内容生成代码: [ Last edited by zw19750516 on 2008-4-23 at 10:05 PM ] |
|
| 第9楼 pusofalse | 发表于 2008-04-23 22:06 |
| 银牌会员 发帖 646 积分 1,604 | |
|
这是我的代码~可惜要生成临时文件~T.T @echo off&setlocal enabledelayedexpansion
echo %time% set n=-4 :1 set /a n+=4 for /f %%a in (a.txt) do ( set str=%%a set var=!str:~%n%,1! set/p=!var!<nul>>temp.tmp if !var! equ z goto :2 ) goto :1 :2 for /l %%a in (1 1 4) do for /f %%i in (temp.tmp) do echo %%i echo %time% pause 模仿zw19750516的另外一贴子,用时0.04-0.06秒之间,完全是在标签2内投机取巧啊~T.T 可以问下两位前辈 学习批处理已经多长时间了吗~? |
|
| 第10楼 bat-zw | 发表于 2008-04-23 22:08 |
| 金牌会员 发帖 1,276 积分 3,105 | |
Originally posted by pusofalse at 2008-4-23 22:06: 看我注册时间 ps: goto 后面不要加: [ Last edited by zw19750516 on 2008-4-23 at 10:10 PM ] |
|
| 第11楼 dreamseed | 发表于 2008-04-23 22:13 |
| 初级用户 发帖 10 积分 38 来自 GZ | |
|
多解。不可行。
例如 abcd 可“还原”为 还有许多许多... |
|
| 第12楼 bat-zw | 发表于 2008-04-23 22:16 |
| 金牌会员 发帖 1,276 积分 3,105 | |
Originally posted by dreamseed at 2008-4-23 22:13: 你先还是测试一下再说多解的事吧,我们是分4组然后递进4位截取的字符,真不知道怎么会出现多解!!! |
|
| 第13楼 26933062 | 发表于 2008-04-23 22:23 |
| 银牌会员 发帖 879 积分 2,268 | |
|
再来一个
: |
|
| 第14楼 pusofalse | 发表于 2008-04-23 22:31 |
| 银牌会员 发帖 646 积分 1,604 | |
|
@echo off&setlocal enabledelayedexpansion
@echo %time% set n=-4 :1 set /a n+=4 for /f %%a in (a.txt) do ( set str=%%a set var=!var!!str:~%n%,1! if !var:~-1! equ z for /l %%i in (1 1 4) do @echo !var! ) if %var:~-1% neq z goto 1 echo %time% echo.终于没临时文件了啊。。。T.T&pause |
|
| 第15楼 26933062 | 发表于 2008-04-23 22:35 |
| 银牌会员 发帖 879 积分 2,268 | |
|
仔细看了下5楼的代码,201个字符循环了51次,那么是否可以这样呢?
: |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |