Maison > développement back-end > C++ > Comment gérer les barres obliques inverses dans les littéraux de chaîne C# et éviter les erreurs de « séquence d'échappement non reconnue » ?

Comment gérer les barres obliques inverses dans les littéraux de chaîne C# et éviter les erreurs de « séquence d'échappement non reconnue » ?

Barbara Streisand
Libérer: 2025-01-05 06:36:44
original
449 Les gens l'ont consulté

How to Handle Backslashes in C# String Literals and Avoid

Littéraux de chaîne en C# avec barres obliques inverses : résolution des erreurs de séquence d'échappement non reconnues

Des erreurs de séquence d'échappement non reconnues peuvent se produire lors du traitement de chaînes en C# qui contiennent des barres obliques inverses. Explorons comment résoudre ce problème.

Le code ci-dessous tente de définir une chaîne avec plusieurs barres obliques inverses, représentant un chemin de fichier :

string foo = "D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";
Copier après la connexion
Copier après la connexion

Cependant, ce code déclenche une erreur du compilateur car les barres obliques inverses ont une signification particulière dans les littéraux de chaîne C#. Plus précisément, ils sont utilisés pour désigner les séquences d'échappement des caractères spéciaux. Par conséquent, chaque barre oblique inverse doit être précédée d'une autre barre oblique inverse.

Pour échapper aux barres obliques inverses, il existe deux options :

1. Doubles barres obliques inverses

La méthode la plus simple consiste à utiliser deux barres obliques inverses pour chaque barre oblique inverse de la chaîne. Par exemple :

string foo = "D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";
Copier après la connexion
Copier après la connexion

Cela garantit que le compilateur interprète correctement les barres obliques inverses dans le cadre du chemin du fichier, et non comme des séquences d'échappement.

2. Utilisation du littéral de chaîne verbatim (@)"

Une approche alternative consiste à utiliser le littéral de chaîne verbatim, désigné par le symbole @ avant la chaîne. Cette méthode vous permet d'incorporer des caractères spéciaux, y compris des barres obliques inverses, sans avoir besoin de s'échapper. Par exemple :

string foo = @"D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";
Copier après la connexion

Les deux méthodes résolvent efficacement l'erreur de séquence d'échappement non reconnue et vous permettent de définir chaînes avec des barres obliques inverses qui représentent les chemins de fichiers ou d'autres caractères spéciaux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal