• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

批处理实现文本内容横列变纵列的代码

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
因为论坛会吞掉文本每行的第一个空格,现截图上来。


每行的字符数都一样,但未知多少个字符。
注意,文本第三行r之后有一个空格。第四行x之后有一个空格。
输出为:


即横列变纵列,并保留原来空格。
要求,高效,不生成临时文件。

batman:
复制代码 代码如下:

@echo off
for /f "delims=" %%. in (1.txt) do set "_=0"&set "..=%%."&call :{}
for /l %%+ in (1,1,%_%) do call,echo.%%..%%+%%
pause>nul&goto :eof
:{}
set "#=%..:~,1%"&call,set "..=%%..:~1%%"&set /a _+=1&call,set "..%_%=%%..%_%%%%#%"&if defined .. goto {}

说明下:
之所以写下这么一段怪异的代码,就是想告诉大家,只要你运用得得当,批处理真的是可以随心所欲地写,这也就
是其中乐趣所在了。。。
 
 
浅默:
复制代码 代码如下:

@echo off&setlocal enabledelayedexpansion
for /l %%a in (0,1,10) do (
for /f "delims=" %%i in (a.txt) do (
set ke=%%i
set /p=!ke:~%%a,1!<nul
)
echo.
)
pause

 
 
Keen:
复制代码 代码如下:

@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
set v=%%i
set n=0
call :lp
)
for /l %%i in (1 1 %n%) do (
set num=%%i
call,echo %%_!num!%%
)
pause&exit/b
:lp
set /a n+=1
set _%n%=!_%n%!%v:~0,1%
set v=%v:~1%
if not "%v%"=="" goto lp
goto :eof

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
批处理去除指定字符前所有的0的代码发布时间:2022-02-11
下一篇:
批处理数值排序问题发布时间:2022-02-11
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap