Maison > développement back-end > C++ > Comment puis-je supprimer ou remplacer de manière fiable les caractères invalides dans les chemins et les noms de fichiers ?

Comment puis-je supprimer ou remplacer de manière fiable les caractères invalides dans les chemins et les noms de fichiers ?

Susan Sarandon
Libérer: 2025-01-21 09:03:08
original
970 Les gens l'ont consulté

How Can I Reliably Remove or Replace Invalid Characters in File Paths and Names?

Gestion des caractères invalides dans les chemins et noms de fichiers

Cet article aborde le défi de la suppression ou du remplacement fiable des caractères non valides dans les chemins et noms de fichiers. Une solution précédemment suggérée utilisant la méthode Trim s'est avérée insuffisante. La clé est de manipuler activement la chaîne pour obtenir le résultat souhaité.

Méthode 1 : Supprimer les caractères invalides

Une approche simple consiste à diviser la chaîne en chaque caractère invalide, puis à concaténer les parties restantes :

<code class="language-csharp">public string RemoveInvalidChars(string filename)
{
    return string.Concat(filename.Split(Path.GetInvalidFileNameChars()));
}</code>
Copier après la connexion

Cette méthode élimine efficacement tout caractère identifié comme invalide par Path.GetInvalidFileNameChars().

Méthode 2 : Remplacement des caractères invalides

Pour les scénarios où la préservation de la structure de chaîne d'origine est importante, il est préférable de remplacer les caractères invalides par un substitut approprié (par exemple, un trait de soulignement) :

<code class="language-csharp">public string ReplaceInvalidChars(string filename)
{
    return string.Join("_", filename.Split(Path.GetInvalidFileNameChars()));
}</code>
Copier après la connexion

Cette approche divise la chaîne en caractères non valides et rejoint les segments en utilisant le trait de soulignement en remplacement, garantissant ainsi que le nom ou le chemin global du fichier reste en grande partie intact. Ceci est particulièrement utile lorsqu'il s'agit de noms de fichiers fournis par l'utilisateur.

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