Caractere " nul " [Fermé]

Messages postés
38
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
22 mars 2011
- - Dernière réponse :  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




Afficher la suite 

5 réponses

Messages postés
8896
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1376
0
Merci
Salut,

Le caractère Nul à pour valeur zero, du moins en C. Donc tu peux peut être directement saisir la valeur 0.
Messages postés
38
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
22 mars 2011
3
0
Merci
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 : http://img87.imageshack.us/i/caracterenul.jpg/

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
Messages postés
8896
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1376
0
Merci
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?
gotrunks39
Messages postés
38
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
22 mars 2011
3 -
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 )
kilian
Messages postés
8896
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1376 -
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
gotrunks39
Messages postés
38
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
22 mars 2011
3 -
Ok merci à toi je vais tester ça ;)
Messages postés
23115
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
11 décembre 2019
5791
0
Merci
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
Merci
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