2011-04-19 2 views
0

string antcbatchpath = @"""C:\Work\6.70_Extensions\release\SASE Lab Tools\ANT Builds\antc.bat"""remplaçant un chemin hardcoded

dans la chaîne ci-dessus, si je voudrais remplacer 6.70_Extensions avec buildStream comment puis-je le faire?

buildStream peut être 6.70_Extensions, 7.00_Extensions ou 7.10.000_Tip etc

buildStream est obtenu à partir combobox sélection

Répondre

3

Si je vous, je ferais

string antcbatchpath = string.Format(@"""C:\Work\{0}\release\SASE Lab Tools\ANT Builds\antc.bat""", buildStream); 

string.Format est une méthode très utile que je utiliser tout le temps. Pour donner du crédit là où le crédit est dû, j'ai emprunté le lien de la réponse de Devendra.

1
String antcbatchpath = @"""c:\work\{0}\release\SASE Lab Tools\ANT Builds\antc.bat"""; 

String newPath = String.Format(antcbatchpath, buildStream); 
1

Utilisez string.Format,

if (myComboBox.SelectedValue != null) 
{ 
    string buildStream = myComboBox.SelectedValue.ToString().Trim(); 

    // Assuming your build stream is not culture dependent 
    // {0} is the placement handler for the first argument 
    string.Format(CultureInfo.InvariantCulture, @"""C:\Work\{0}\release\SASE Lab Tools\ANT Builds\antc.bat""", 
         buildStream); 
} 
+0

Vous êtes proche. Cependant, l'original a 3 citations à la suite pour une raison ... Il l'utilise comme paramètre pour un processus qu'il invoque dans d'autres étapes. – NotMe

+0

@Chris Lively, édité la réponse. –

+0

Dans ce cas, +1. ;) – NotMe