Comment utiliser JSL pour modifier des nombres décimaux en données binaires dans ce format ?Bonjour!
Comment utiliser JSL pour modifier des nombres décimaux en données binaires dans ce format ?
Merci!
000903
999999

Modélisation statistique avancéeAutomatisation et scriptsPersonnalisation de masseles fenêtresRe : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?Désolé, je me suis trompé, Load/Save Text File prend en charge BLOB, voir l'index des scripts. Mais je pense que quelque chose d'autre ne va pas pendant l'opération de fichier. Ci-dessous JSL avec option de lecture de BLOB.
Names Default To Here( 1 );
tem = {"000903", "999999"};
b = "0100";
c = "0000000000000000000000000000000000";
d = "";
j = 1;
For( j = 1, j <= N Items( tem ), j++,
a = tem[j];
theHex = "";
i = 1;
While( Substr( a, i, 1 ) != "",
theHex = theHex || Hex( Substr( a, i, 1 ) );
i++;
);
d = d || b || theHex || c;
);
Show( d );
Show( "d = 0100303030393033000000000000000000000000000000000001003939393939390000000000000000000000000000000000" );
filename = Save Text File( "$TEMP\try1.dat", Hex To Blob( d ) );
text = Load Text File( filename, BLOB );
Show( (Blob To Char( text )) );Re : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?@lala , c'est vraiment difficile de te suivre, ce que tu fais et ce que tu veux. Je pense que la suggestion de Jim est bonne, et votre problème n'est pas dans JSL mais dans les opérations de fichiers.
Mon sentiment est que vous ne devriez pas écrire de données binaires dans un fichier texte. Si cela fonctionne, vous devriez pouvoir le relire, mais ce n'est pas le cas, JMP génère une erreur.
Names Default To Here( 1 );
tem = {"000903", "999999"};
b = "0100";
c = "0000000000000000000000000000000000";
d = "";
j = 1;
For( j = 1, j <= N Items( tem ), j++,
a = tem[j];
theHex = "";
i = 1;
While( Substr( a, i, 1 ) != "",
theHex = theHex || Hex( Substr( a, i, 1 ) );
i++;
);
d = d || b || theHex || c;
);
Show( d );
Show( "d = 0100303030393033000000000000000000000000000000000001003939393939390000000000000000000000000000000000" );
filename = Save Text File( "TEMP\try1.dat", Hex To Blob( d ) );
text = Load Text File( filename );
Show( (Blob To Char( text )) );Re : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?d="010030303039303300000000000000000000000000000000100393939393939000000000000000000000000000000000"
d="0100303030393033000000000000000000000000000000000001003939393939390000000000000000000000000000000000"
Re : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?d="01003030303930330000000000000000000000100393939393939000000000000000000000"
Je ne comprends pas 34=OK et 33=faux
Re : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?c = "0000000000000000000000000000000000";
34——D'accord
c = "0000000000000000000000";
22—— faux
Re : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?

Re : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?Merci Jim!
Je comprends donc le principe du calcul. Mais je n'arrive toujours pas à comprendre comment ajouter autre chose et l'enregistrer dans ce format.
Merci les Experts !

Re : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?Ceci est juste une conversion en Hex
Names Default To Here( 1 );
a = "000903";
theHex = "";
i = 1;
While( Substr( a, i, 1 ) != "",
theHex = theHex || Hex( Substr( a, i, 1 ) );
i++;
);
Show( theHex );
Cela revient
theHex = "303030393033";
Re : Comment utiliser JSL pour modifier les nombres décimaux en données binaires dans ce format ?D:\E\download1.dat