【发布时间】:2011-05-20 08:14:44
【问题描述】:
编辑: 这是 stringparsing.bat 文件的链接,以防其他文件不适合您! http://www.drivehq.com/file/DF.aspx?sesID=yycd31uaiezsvh3qrcdzkk45&isGallery=&share=&shareID=0&forcedDownload=true&fileID=618297825
EDIT#2: 我怀疑是问题原因的代码 sn-p 是:
set /p line1= :
echo %line1% >> %name%.txt 2> error_log.txt
echo %name% > Language_File.txt
attrib +h Language_File.txt
set /a foo+ =1
)
echo.
echo ==========================================================
goto LOAD
:LOAD
set /a foo+ =1
IF %foo%== 2 goto loadexternal
goto LOAD23
:loadexternal
echo.
echo language file is loading now!
IF Exist Language_File.txt attrib -h Language_File.txt
set /p name=<Language_File.txt
程序(由于某种原因)无法根据另一个文本文件(language_file.txt)的内容找到文本文件,但是我对其进行了测试并且可以完成,但不是在我的程序中......
好吧,我对我创建的同一个批处理文件(stringparsing.bat)提出了 3 个不同的问题,其他两个问题的链接可以在这里找到:
"access denied" error message for a text file i just made?
首先,将文本文件中的多行设置为一个变量时存在问题,现在已修复。然后出现错误消息,因为我试图重定向到已修复的隐藏文件。现在问题出在 set /p 命令和一个变量 (%name%) 上。这是我的问题的解释(从上面链接的页面底部引用)
“我遇到了一个问题....我修复了拒绝访问错误,但是“windows 找不到指定的文件”错误确实令人困惑,我在普通命令行中对其进行了测试,” type frenchy.txt" 显示我创建的文本文件的内容,"set /p var=%name%.txt" 显示错误。但是在那之后,我输入了"echo %name%" 并显示了内容文本文件。所以问题在于使用(或误用)带有变量的 set /p 命令。"
如果您需要更多信息,我强烈建议您点击我之前问题的链接。我开始了一个新问题,因为没有人在评论中回复它(可能是因为它是一个完全不同的问题,因此值得一个单独的问题。)此外,我标记为“最佳答案”的建议解决方案(绿色复选标记)不再适用于我,因为不断出现错误“windows 找不到指定的文件”...我已将其缩小到 set /p 命令以及 %name% 变量是错误消息的原因但似乎无法理解我做错了什么......在这篇文章的最后,我会添加一个指向我当前版本的“stringparsing.bat”文件的链接......或者如果你更愿意只查看它的脚本(请注意,这不是它的最新副本)您可以点击顶部的链接转到我之前的问题(我在那里发布了脚本)我已经在这个程序上工作了很长一段时间,但只发现了更多和更多的问题。希望这将是最后一个!
这是我当前的 stringparsing.bat 文件副本的链接: http://uploading.com/files/183m5b63/stringparsing.bat/
如果您发现任何其他问题,请告诉我如何解决它们!
提前致谢!
【问题讨论】:
-
你能创建一个小样本批处理文件来显示你遇到的问题吗?我在下载文件时遇到问题,我无法在您链接到的另一个问题中归档“set /p var=%name%.txt”行。
-
我在这篇文章的顶部添加了一个指向该文件的新链接,另外,只需转到我的另一个问题,您就会在那里找到完整的代码,只需复制该脚本并尝试一下你会看到错误(或者你应该看到)。
-
如果加上sn-p并显示有问题的行会更简单
-
如果您在格式化时遇到问题,可以将其添加为答案,但将其标记为社区 wiki。这将允许分数 >100 的其他人正确格式化。
-
当程序创建“language_file.txt”,然后尝试将其内容设置为变量(%name%),然后尝试以该变量为其查找文件时,就会出现问题姓名。例如:
标签: variables string command-line batch-file