
請教管道符如何輸出到set/p我的標題表達可能不太清楚。意思是這樣的:
管道符(|)可將前面的結果輸出到后面的命令。如:echo Y|del 1.txt但比如,有一個程序,讓輸入一個數。但輸入完你按回車時,不小心多敲了一個字符,比如引號。這時程序會發現輸入的不是數字。但你輸入的數字很長,總不能重新輸入一遍吧。為方便重新輸入,將原來的結果先輸出到set /p里。如:
以便實現在原來的基礎上修改再輸入。相信也明白我的意思了吧但經測試,上面的代碼是錯誤的。求教:如何修改,使目的能達到?如果能達到,再問一個問題:如果用戶輸入的有類似=!%&的特殊字符,能否原樣輸出到set /p附:目前的幾種我找到的我不太滿意的解決方式:1.將原先結果用echo顯示到屏幕上,讓用戶自行復制。論:這種方法需要用戶一行一行復制(因為顯示時每一行后會有一個回車符),還不能用快捷鍵,所用時間也不亞于讓用戶重新輸入一遍。2.增加智能識別。論:是,這樣可以把最后一個多輸入的字符刪掉。但如果不止一個呢?或是用戶輸入的一長串數字中間有某處按錯鍵了,把5按成了6,你能智能判斷嗎?3.將原先結果輸出到文本。讓用戶對文本修改后再從文本中提取論:是,如果不考慮特殊字符,編碼,行數等,這或許是一個選擇。但是,你有沒想過,如果一行過長呢?一個變量最多有8192個字,你能保證完整性不?set /p還能將長度控制在1021以內。我用搜索功能只搜索到這幾種成功的解決方法,想問還有解決方法不?不管有沒有,先在此謝謝大家了。nclick="copycode($('code0'));">復制代碼
- echo %a%|set /p a=

