Supprimer tous les “invisibles” caractères à partir d'une chaîne?

Je suis en train d'écrire un peu de classe pour lire une liste de paires clé-valeur à partir d'un fichier et écrire dans un Dictionary<string, string>. Ce fichier a le format suivant:

key1:value1
key2:value2
key3:value3
...

Ce devrait être assez facile à faire, mais puisque l'utilisateur doit modifier ce fichier manuellement, comment dois-je traiter avec des espaces, tabulations, sauts de ligne supplémentaires et des trucs comme ça? Je peux probablement utiliser Remplacer pour supprimer les espaces et les tabulations, mais, est-il un autre "invisible", les personnages que je suis absent?

Ou peut-être que je peux supprimer tous les caractères non alphanumériques, ":" et les sauts de ligne (depuis la ligne de saut, ce qui le séparent d'une paire de l'autre), puis supprimer tous les sauts de ligne supplémentaires. Si c', je ne sais pas comment faire pour supprimer "tout-sauf-certains" personnages.

Bien sûr, je peux aussi vérifier les erreurs comme "key1:valeur1:somethingelse". Mais des trucs comme ça n'a pas vraiment beaucoup d'importance parce que c'est évidemment la faute de l'utilisateur et je voudrais juste montrer un "format Invalide" message. J'ai juste envie de traiter avec les trucs de base, puis mettre le tout dans un bloc try/catch, juste au cas où quelque chose d'autre se passe mal.

Remarque: je n'ai PAS besoin de toute les espacements à tous, même à l'intérieur d'une clé ou une valeur.

InformationsquelleAutor Juan | 2011-03-14