2

ユーザー定義の名前を持つ別のファイルに変換したいテンプレート ドキュメントがあります。以下は私がまとめたコードです。

rem @echo off
setlocal enableDelayedExpansion

cls

:Check_Filename
set "_Filename="
set /p _Filename=Enter filename to be created:

if not defined _Filename echo You must enter a value. Try again.&goto Check_Filename

set "test=%_Filename:~0,1%"

for %%C in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if defined test set "test=!test:%%C=!"

if defined test echo Invalid input. Try again.&goto Check_Filename

if not defined test echo %_Filename%
Set "errorlevel="
echo %_Filename% | findstr /i /R ".java" > nul

if %errorlevel% == 0 (
echo Java extention located
type f:\java\Template.txt > f:\java\%_Filename%
echo %errorlevel% 

) else (
echo Java extention not located
echo %errorlevel%
type f:\java\Template.txt > f:\java\%_Filename%.java
)
)

それは機能しますが、ファイルがJavaスクリプトのバックボーンを作成するために使用されているため、FORステートメントで最初の文字の大文字と小文字を評価する必要がありますが、現在は行っていません。FORステートメントでもこれらの文字のHEX表現を使用しようとしましたが、成功しませんでした。

誰か助けてくれませんか?

ありがとうございました。

4

1 に答える 1

2

これを試して:

@echo off & setlocal
:Check_Filename
set "_Filename="
set /p "_Filename=Enter filename to be created: "

if not defined _Filename echo You must enter a value. Try again.&goto:Check_Filename

echo(%_Filename:~0,1% | findstr /r "[ABCDEFGHIJKLMNOPQRSTUVWXYZ]" || (echo Invalid input. Try again.&goto:Check_Filename)
于 2013-05-01T02:10:49.143 に答える