私のアプリケーションでは、先頭に0が付いた番号を取得します。先行ゼロをトリムして実際の数値を取得しようとしています。私は/a
スイッチを使用して試してみました。このスイッチは、割り当ての右側を算術式として考えました。だから私は試してみました:バッチファイルの先行ゼロを削除する
SET /a N = 00027
は、上記の私に進数の10進数であるの出力を与えました。その後、私はthis solutionをオンラインで見つけました。
SET N = 00027
SET /a N = 1%N%-(11%N%-1%N%)/10
これは働いているようだと、出力を与えています。バッチファイル内の先行ゼロをトリムする簡単な方法はありますか?
ありません。あなたが見ることができるように、次の 'x 'のない先頭の0は、あなたが8進数を使用していることを示します(' 0x0027'は16進数を示します)。それを削除する唯一の方法は、左に0以外の値を連結して10進数のように見せて、追加された量を削除することです。 ( 'set/a N = d/1'のように、 '無効な数字'を生成するような、操作で知られている無効な値を使用して、サポートされている数値フォーマットを見ることができます。 (021)」を参照してください。 –
必要なものを実行する1ライナーソリューションが見つかりました。その他に必要なもの: – mrt
参照:http://www.robvanderwoude.com/battech_leadingzero.php –