Caractere " nul "

Fermé
gotrunks39 Messages postés 38 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 22 mars 2011 - 20 janv. 2011 à 20:52
 Utilisateur anonyme - 21 janv. 2011 à 03:08
Bonjour, ou bonsoir


Je suis en train de modifier un fichier via Hexedit ( excellent d'ailleurs ), et j'ai besoin de mettre le caractere " Nul " entre chaque données, mais on ne peut pas le saisir au clavier, donc mon seul moyen est de copier / coller un caractere Nul present et de le coller entre chaque donnée donc je perd du temps,


Alors j'aimerais savoir s'il est possible de capturer ce caractere nul, pour le saisir au clavier par exemple, ou l'enregistrer dans une combinaison clavier du moins, j'ai deja essayer les macro mais Hexedit me dit fichier non compatible

Merci de votre aide




A voir également:

5 réponses

kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
20 janv. 2011 à 21:02
Salut,

Le caractère Nul à pour valeur zero, du moins en C. Donc tu peux peut être directement saisir la valeur 0.
0
gotrunks39 Messages postés 38 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 22 mars 2011 3
20 janv. 2011 à 22:32
Oui le caractere nul est bien representé par " 00 " mais moi je veut le placer dans du texte sans devoir toucher au code Hexa,

Voici une image pour mieux comprendre : https://imageshack.com/

Vous voyez les points rouge ?? C'est le caractere rouge et c'est cela que j'aimerais reproduire au clavier, je dois le placer entre chaque autres caracteres


Merci
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
20 janv. 2011 à 22:37
Ah, et tu dois faire ça entre chaque caractère du fichier? Même des caractères non imprimable, etc...?

Y'a t'il un langage de programmation avec lequel tu es familier?
0
gotrunks39 Messages postés 38 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 22 mars 2011 3
20 janv. 2011 à 22:44
Oui entre chaque caractere car cela est un fichier qui gere les textes d'un jeu en ligne ANGLAIS et le seul moyen de le modifier en FRANCAIS et de l'editer avec un editeur Hexadecimal.

Sinon je n'est pas de caracteres non imprimables dans ce fichier donc je ne sais pas ^^

Et oui je connais les bases du C++ et Java ( et HTML si ca peut compter )
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
20 janv. 2011 à 23:00
Parce que le plus simple serait simplement de faire un petit programme qui fait ça automatiquement.
Désolé j'ai plus la mémoire très fraiche avec les manipulations de fichiers en C++, par contre en C:

#include <stdio.h>

int main(void)
{
	FILE *in, *out;
	char c;

	in = fopen("in.txt", "r");
	out = fopen("out.txt", "w");

	if (!in || !out) {
		perror("Peut pas ouvrir fichier\n");
		return -1;
	}

	while ((c = fgetc(in)) != EOF) {
		fwrite(&c, 1, 1, out);
		c = '\0';
		fwrite(&c, 1, 1, out);
	}

	fclose(in);
	fclose(out);

	return 0;
}


Donc tu as juste besoin de compiler ça (comme si c'était du C++), nommer ton fichier d'entrée in.txt et le résultat sera dans out.txt
0
gotrunks39 Messages postés 38 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 22 mars 2011 3
20 janv. 2011 à 23:14
Ok merci à toi je vais tester ça ;)
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
20 janv. 2011 à 23:15
Bonsoir,

Regarde dans les options pour éditer ton texte en unicode.
Ils seront sur 2 octets avec le 2nd à 0.
Sinon recherche un éditeur qui traite l'unicode

eric
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
21 janv. 2011 à 03:08
Salut,

Ce que tu peux faire en java:

String valNull = Integer.toString(0, 16);
         String unTexte = "";
         String unTexte2 = "";
         	
         unTexte = "S" + valNull + "A" + valNull + "L" + valNull + "U" + valNull + "T";
         System.out.println("unTexte: " + unTexte);
         
         unTexte2 = unTexte.replaceAll(valNull, "");
         System.out.println("unTexte2: " + unTexte2);


Cordialement,

Dan
0