117 votes

Suppression des caractères "NUL"

J'ai des caractères comme ça dans mon bloc-notes ++

capture d'écran de NULs

Quand j'essaie de copier toute la ligne, je copie en fait tout jusqu'à "NUL" :

Fichier:1

Ce que je veux faire, c'est remplacer ces null, pour qu'ils ne soient rien, afin je puisse copier toute ma ligne. Peut-être qu'il y a un mot-clé qui dira à notepad++ (ou tout autre programme qui pourrait aider) de remplacer ces caractères ? Quand je les sélectionne, clique droit puis "effacer", ils disparaissent - mais je ne veux pas le faire un par un.

Je me fiche de supprimer la cause de ce problème, seulement l'effet (NULs)

140voto

Aleksandr Shumilov Points 1445

Cela pourrait vous aider, j'avais l'habitude de rectifier mes fichiers de cette manière : http://security102.blogspot.ru/2010/04/findreplace-of-nul-objects-in-notepad.html

Essentiellement, vous devez remplacer les caractères \x00 avec des expressions régulières

entrez la description de l'image ici

42voto

user4247816 Points 421

Cliquez sur Rechercher --> Remplacer --> Rechercher quoi : \0 Remplacer par : "vide" Mode de recherche : Étendu --> Remplacer tout

14voto

user914945 Points 151

J'avais le même problème. Ce qui précède m'a mis sur la bonne voie mais n'était pas tout à fait correct dans mon cas. Ce qui a fonctionné était étroitement lié :

  • Ouvrez votre fichier dans Notepad++
  • Tapez Contrôle-A (sélectionner tout)
  • Tapez Contrôle-H (remplacer)
  • Dans 'Rechercher quoi' tapez \x00
  • Dans 'Remplacer par' laissez VIDE
  • Dans 'Mode recherche' sélectionnez 'Étendu'
  • Ensuite cliquez sur 'Remplacer tout'

7voto

Miller Points 1048

Essayez Trouver et Remplacer. tapez \x00 dans la zone de texte Rechercher, cochez l'option Expression régulière. Laissez la zone de texte Remplacer vide et cliquez sur remplacer tout. La touche de raccourci pour trouver et remplacer est ctrl+H.

4voto

Lee Harris Points 384

J'ai essayé d'utiliser \x00 et cela n'a pas fonctionné pour moi en utilisant C# et Regex. J'ai réussi avec ce qui suit:

//Le caractère hexadécimal 0x0 est le caractère nul  
mystring.Contains(Convert.ToChar(0x0).ToString() );  

// Cela remplacera le caractère
mystring = mystring.Replace(Convert.ToChar(0x0).ToString(), "");

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X