我想取一串数字并将每个数字转换为文本文件标题

时间:2015-10-08 02:59:41

标签: batch-file coding-style numbers pi

我正在寻找一串数字(一百万位Pi)。每个号码我想成为一个文件名

例如

3.14159

我希望3是一个文本文件名
。成为文本文件名
1是文本文件名
4是文本文件名
1是文本文件名
5是文本文件名
9是文本文件名
等等等。

我在互联网上搜索但没有任何结果。

如果有人能够帮我解决这个问题,那就太好了!

2 个答案:

答案 0 :(得分:0)

我的请求中没有任何意义,但这完全符合您的要求(并且比写入百万个文件要快得多,多次覆盖999990个文件):

for /l %%i in (0,1,9) do break>%%i.txt
break>..txt

答案 1 :(得分:0)

我也不明白你的目标是什么。我猜你想要计算字符串中的字符数。

因此,这可以提供帮助:

@echo off
if not exist pi-folder\nul md pi-folder
pushd pi-folder

setlocal enabledelayedexpansion
echo 3.1234567890abc>"%tmp%\pi.tmp"
for %%l in ("%tmp%\pi.tmp") do set /a len=%%~zl
set /a len-=2
set /a count=len - 2
echo:
echo 3.1234567890abc count !count! characters after the dot
echo:

pause>nul
rem create one file per character
for /l %%i in (-1,-1,-%len%) do (
  for /f %%a in (%tmp%\pi.tmp) do (
    set char=%%a
    if "!char:~%%i,1!" neq "." (
      copy nul !char:~%%i,1!
    ) else (
      copy nul !char:~%%i,1!~
    )
  )
)
endlocal
popd

输出:

3.1234567890abc count 13 characters after the dot

copy nul c
copy nul b
copy nul a
copy nul 0
copy nul 9
copy nul 8
copy nul 7
copy nul 6
copy nul 5
copy nul 4
copy nul 3
copy nul 2
copy nul 1
copy nul .~
copy nul 3

dir /b之后的结果:

.~
0
1
2
3
4
5
6
7
8
9
a
b
c