Comment échapper les accolades dans une chaîne de format en .NET (C#)
Bonjour à tous ! Je viens de commencer à apprendre C# et j'ai rencontré un problème avec la méthode `String.Format` (ou l'interpolation de chaînes). Je dois afficher un texte contenant des accolades, par exemple pour générer une chaîne JSON ou un modèle HTML.
Le problème est que lorsque j'écris ce code :
```csharp
string result = String.Format("Valeur : {0} et {1}", "A", "B");
Console.WriteLine(result); // Affiche : Valeur : A et B
```
Tout fonctionne. Mais si je veux afficher les accolades elles-mêmes, par exemple dans la chaîne "Valeur : {0} et {1}", le compilateur ou l'environnement d'exécution les interprète comme des espaces réservés pour les arguments. J'ai essayé de mettre des doubles accolades, mais cela n'aide pas — une exception FormatException se produit.
Voici un exemple de mon code qui ne fonctionne pas :
```csharp
string jsonTemplate = String.Format("{{\"name\": \"{0}\"}}", "Alice");
Console.WriteLine(jsonTemplate); // J'attends : {"name": "Alice"}
// J'obtiens une exception : Input string was not in a correct format.
```
No answers yet.
Connectez-vous pour laisser une réponse