2012-02-16 15 views
6

複数の文字列を連結して1つの文字列変数を作成する必要があります。私が必要とする最後の文字列は以下の通りです.batファイルを使用して特殊文字を含む複雑な文字列変数を作成する

<Workspace name="RealTimeRiskUSD_UA" path="C:\workspace" IsAdmin="false" /> 

これは私が試みたものです。

echo off 
set path1="<Workspace " 
set name="name="RealTimeRiskUSD_UA"" 
set path2="path="C:\workspace" IsAdmin="false" />" 
set fullpath=%path1%%name%%path2% 
echo %path1% 
echo %name% 
echo %path2% 
echo %fullpath% 

私はまた、各文字列から二重引用符を削除するには、以下のリンクを使用してみましたが、あなたはSETの拡張構文を使用することができ
http://ss64.com/nt/syntax-esc.html

答えて

9

を動作しません。 "var = content"を設定します。

これは特殊文字をエスケープしますが、引用符はその文字列の一部ではありません。

echo off 
Setlocal EnableDelayedExpansion 
set "path1=<Workspace " 
set "name=name="RealTimeRiskUSD_UA"" 
set "path2=path="C:\workspace" IsAdmin="false" />" 
set "fullpath=%path1%%name%%path2%" 
echo !fullpath! 
+0

こんにちは、お返事ありがとうございました!あなたは私の違いを教えてください!フルパス!この場合、%fullpath%? – NewQueries

+1

遅延拡張の利点は、遅延拡張の利点は、特別な文字をサイドエフェクトなしで使用できることです。 – jeb

+0

ああ、ありがとうございます。 – NewQueries

関連する問題