/ / Eliminación de caracteres no deseados de los nombres de las carpetas [duplicado] - c #

Eliminar caracteres no deseados de nombres de carpetas [duplicados] - c #

Estoy creando un montón de carpetas utilizando una aplicación de consola C #. Se analiza un archivo XML para diferentes nodos y, en función de los valores, las carpetas se crean con el mismo nombre.

Uno de los nodos XML tenía el siguiente valor con algún carácter especial desconocido (código ASCII 127)

Nombre de carpeta con carácter especial

Hay un carácter especial después de Foldername. Intenté usar String.Trim () para recortar el valor pero no tuve suerte. También traté de comparar el personaje con la lista de

System.IO.Path.GetInvalidFileNameChars()

y quitarlo. Pero todavía no hay suerte. ¿Cómo puedo intentar eliminar estos caracteres antes de crear un nombre de carpeta? El nombre de la carpeta siempre será alfanumérico en mi caso.

Respuestas

2 para la respuesta № 1

Si el nombre de la carpeta "siempre será alfanumérico", simplemente puede eliminar todos los caracteres no alfanuméricos:

var regex = new Regex("[^a-zA-Z0-9]");
fileName = regex.Replace(fileName, string.Empty);

2 para la respuesta № 2

Podría eliminar los caracteres no deseados utilizando expresiones regulares -

string validFolderName = Regex.Replace(folderName,"[^A-Za-z0-9 _]","");