问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

bat将txt中指定位置字符设为变量

发布网友 发布时间:2022-04-22 06:43

我来回答

2个回答

热心网友 时间:2022-06-16 17:52


@echo off

setlocal EnableDelayedExpansion


::从 file.txt 中读取文本

set /p str=<file.txt

::显示文本

echo %str%

::创建用于储存长度的变量

set /a len=0

::获取 str 变量的长度 储存到 len 中

call :strlen len str

::显示文本长度

echo 文本长度 = %len%

::生成从[0到len)的随机数

::  先创建随机数(0~65535)

set rand=%random%

::  显示随机数

echo 随机数 = %rand%

::  将随机数与len求余数(对于有5个字的文本会生成[0,4]的区间)

set /a choose=%rand%%%%len%

::  显示选择的数字

echo 选择第 %choose% 个索引(0表示第1个字,1表示第2个字)

::显示文本中根据随机数选择的字符(截取

echo !str:~%choose%,1!


pause


::这里是获取文本总长度的函数

:strlen <resultVar> <stringVar>

(   

    (set^ tmp=!%~2!)

    if defined tmp (

        set "len=1"

        for %%P in (4096 2048 1024 512 256 128 64 32 16 8 4 2 1) do (

            if "!tmp:~%%P,1!" NEQ "" ( 

                set /a "len+=%%P"

                set "tmp=!tmp:~%%P!"

            )

        )

    ) ELSE (

        set len=0

    )

)

    endlocal

    set "%~1=%len%"

    exit /b

)

热心网友 时间:2022-06-16 17:53

不清楚你的实际文件/情况,仅以问题中的说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行@echo off&cd /d "%~dp0"
rem 从一个指定txt文本文件里的第一行内容中随机提取/截取一个字符
set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
set "txtfile=xxx.txt"
if not exist "%txtfile%" (echo;"%txtfile%" not found&pause&exit)
set /p line=<"%txtfile%"
set length=0&set "char="
setlocal enabledelayedexpansion
:loop
if "!line:~%length%,1!" neq "" (
    set /a length+=1
) else (goto :break)
goto :loop
:break
set /a "r=!random! %% length"
set "char=!line:~%r%,1!"
echo;"!char!"
echo;%#% +%$%%$%/%_% %z%
pause
exit

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
自离后能补办离职证明吗? 我是家里自离的,可以补办辞职手续吗 急救!!!狗狗受凉吃什么就吐什么,该吃什么药 狗狗受凉呕吐吃什么药好得快 公告栏标题里的字如何设定字体及大小 公告栏怎移动啊 我的公告栏 如何设置 怎么让QQ拍拍公告栏文字不滚动 在滚动的公告栏中鼠标放上去时就停止,这种效果怎么做?谢谢了 王者荣耀铂金1和黄金3双排排到的是什么段位的 山东德建集团有限公司建筑规划勘察设计研究院怎么样? Win10 怎么启动高级系统管理 携程国际机票的市场占有率是多少? 怎么在bat内输入文字并设置为变量 去过北戴河的朋友帮帮我 win8高级系统设置在哪 世界城市美称 去年或者近年旅游电子商务各平台所占的市场份额比... 请问如何在bat中把一个文件改为变量的值? 山东德建集团有限公司四建建设分公司怎么样? bat如何设置环境变量并立即生效 电脑开机后要进入高级系统选择系统盘才能启动? 香港都有哪些地名 bat中如何定义变量 批处理文件(.bat)的一个设置变量的问题 香港地名有哪些呢? BAT文件中环境变量可以随便改吗? 度蜜月的最佳地点是哪里啊 通过批处理bat设置系统环境变量的实现代码 世界著名的沿海城市 携程连续三年稳居全球旅企第一,携程是如何做到该... 成功大广场周边环境怎么样?生活便利吗? bat批处理添加环境变量 前有盈利困局,后有美团追兵,再陷亏损的携程还能... 中国那里风景最好................. bat 添加环境变量问题 bat程序中,变量怎么用的? 结合案例分析,面对芒果网的竞争,携程旅行网采取... 制作一个bat文件,添加环境变量 bat文件中如何创建时间变量 对在线旅行社的建议和意见 如何使用bat替换txt中的变量? 携程2020年全年营收是多少? 关于携程网站的市场定位 市场营销知识分析携程网的目标市场、市场定位及所... 未来携程商旅的市场定位如何,哪位有清楚吗? 常见三角函数的导数 三角函数的导数怎么求? 三角函数及其导数 三角函数和导数之间的关系