Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?Ciao!
Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?
Grazie!
000903
999999

Modellazione statistica avanzataAutomazione e scriptingPersonalizzazione di massafinestreRi: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?D:\E\download1.dat
Ri: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?Questa è solo una conversione in esadecimale
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 );
Questo ritorna
theHex = "303030393033";
Ri: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?Grazie Jim!
Quindi capisco il principio del calcolo. Ma non riesco ancora a capire come finire per aggiungere qualcos'altro e salvarlo in questo formato.
Grazie Esperti!

Ri: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?

Ri: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?c = "0000000000000000000000000000000000";
34——OK
c = "0000000000000000000000";
22—— sbagliato
Ri: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?d="01003030303930330000000000000000000000001003939393939390000000000000000000000"
Non capisco 34=OK e 33=sbagliato
Ri: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?d="0100303030393033000000000000000000000000000000000000001003939393939390000000000000000000000000000000000000"
d="0100303030393033000000000000000000000000000000000001003939393939390000000000000000000000000000000000"
Ri: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?@lala , è davvero difficile seguirti, cosa fai e cosa vuoi. Penso che il suggerimento di Jim vada bene e il tuo problema non è in JSL ma nelle operazioni sui file.
La mia sensazione è che non dovresti scrivere dati binari in un file di testo. Se funziona, dovresti essere in grado di rileggerlo, ma non è così, JMP genera un errore.
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 )) );Ri: Come utilizzare JSL come modificare i numeri decimali in dati binari in questo formato?Scusa, mi sono sbagliato, Carica/Salva file di testo supporta BLOB, vedi indice di script. Ma penso che qualcos'altro stia andando storto durante l'operazione sui file. Sotto JSL con opzione per leggere 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 )) );