2015-04-06 93 views
0

我正在創建一個測驗來測試我的技能,並能夠成功地將文本和變量放入一個單獨的文本文件中。當我試圖從批處理文件中調用它們時,變量是空白的。我怎樣才能解決這個問題?另外,如果有人能告訴我如何回憶一個特定的線路,我將不勝感激。如何將變量放入批處理文件中的文本文件中?

我的代碼(縮短):

Echo What is your Name? 
set /p Name=Name= 
echo Test Results: > TestResults.txt 
echo Name: %Name% >> TestResults.txt 
cls 
echo What's 2 + 2? 
set /p Problem=2 + 2= 
echo 2 + 2= %Problem% >> TestResults.txt 
cls 
echo Who is President? 
set /p President=President= 
echo President= %President% >> TestResults.txt 
cls 
echo Goodbye! 
pause>nul 
cls 
for /f "delims= " %%G in (TestResults.txt) do echo %%G 
pause>nul 
+0

您能否確認您提供的代碼不起作用?我遇到的唯一問題是for循環的delims部分中的空間意味着它無法用空格處理答案。 – SomethingDark 2015-04-06 04:58:11

回答

0

如果您在您的輸出仔細一看,它應該給你一個線索的問題。

當你鍵入結果文件,它應該有所有預期的數據:

c:\>TYPE TestResults.txt 
Test Results: 
Name: Simple Simon 
2 + 2= 16 
President= Bugs Bunny 

但是你FOR/F循環生產:在每一個拳頭的空間後

Test 
Name: 
2 
President= 

沒有出現線。看看你的DELIMS選項,它應該是顯而易見的,你設置令牌分隔符爲<space>。只需確保DELIMS選項是列表中的最後一個選項,並在DELIMS =之後立即輸入結束語,並且解決問題。

for /f "delims=" %%G in (TestResults.txt) do echo %%G 
相關問題