Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?"Min1.dat" est un fichier hexadécimal. J'ai enregistré les données des deux tables dans ce fichier DAT.
Par exemple, les données d'origine du fichier codé comme "113027" ressemblent à ceci.

ScriptingRe: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?Ouvrez "min1.dat" avec "HxD x64.Exe pour voir le symbole hexadécimal spécifique.
Les scripts JSL écrits avec Craige peuvent également voir cela et afficher le même contenu.
b = Load Text File( "D:\0\Min1.dat", blob() ); // load your file

Re: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?J'ai trouvé le symbole hexadécimal indiqué dans la première ligne du fichier "113027" dans HxD.exe.
Le nombre hexadécimal des données 2010090931 est «B38DCF77» et le nombre hexadécimal des données 2010090932 est «B48DCF77»

Re: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?Comment utiliser JSL pour localiser efficacement les données, restaurer les données en virgule flottante et extraire uniquement les données spécifiées?
Comment extraire toutes les données encodées "113027" directement à partir d'un fichier hexadécimal en utilisant JSL?
Merci les experts!
Re: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?J'ai utilisé "Contient" pour déterminer l'emplacement des données de temps, mais je l'ai trouvé inefficace.
b = Load Text File( "D:\0\Min1.dat", blob() ); // load your file
hex = Hex( b );
last4hex = Right( hex, 8 );
num = Length( b );
last4blob = Blob Peek( b, Length( b ) - 4, 4 );
da1 = "B38DCF77";//B3~8D~CF~77
da2 = "B48DCF77";
off1 = Contains( hex, da1 );
off2 = Contains( hex, da2, -1 );
If( off1,
hex = Substr( hex, off1, Length( hex ) )
);
If( off2,
hex = Substr( hex, 1, off2 + 1 )
);
mat = Blob To Matrix( b, "int", 4, "big" );

Re: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?@ lwx228 lorsque j'essaie d'extraire des informations d'un fichier binaire sans documentation appropriée, je dois penser à ce qui pourrait se passer ensuite: le format du fichier peut changer; Je ne serai peut-être pas là pour soutenir mon hack; Je ne comprends peut-être pas vraiment le format. Si le fournisseur qui crée le fichier fournit des outils pour manipuler le fichier, vous devez les utiliser. Si le fournisseur documente le format de fichier, vous devez utiliser cette documentation.

Re: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?Merci pour l'attitude rigoureuse de Craige.
Mes données DAT sont des données logicielles gratuites, dans l'interface de fenêtre, le logiciel peut exporter directement les données au format TXT,
tels que ces deux codes "113027" 、 "123029", les données sont dérivées dans le logiciel.
Je veux juste savoir comment faire en sorte que JMP lise directement les données du fichier DAT dans ce logiciel,
afin qu'il n'y ait pas besoin d'exporter manuellement les données dans l'interface du logiciel pour enregistrer le fichier TXT sur le disque dur, puis de JMP à double usage pour importer le fichier TXT sur le disque dur.
Merci aux experts pour leur aide.
Re: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?Savez-vous si le logiciel dispose d'options de ligne de commande pour effectuer cette tâche?J'ai vu que certains programmes ont des versions CLI de certaines de leurs fonctions.
Si vous avez de la chance, vous pourrez peut-être faire quelque chose comme
Names default to here(1);
RP = Run Program(
Executable( "DatFileCreator.exe" ),
Options( { // all of these options are made up but I've seen programs have them before.
"-export 1"
, "-filepath 'C:\Fake\somefile.dat'"
, "-exportpath 'C:\Fake\sometxtfile.txt"
} ),
ReadFunction( Function( {this}, Write( this << read ) ) )
);
dt = open("C:\Fake\sometxtfile.txt");
Je regarderais d'abord leurs arguments de ligne de commande.De plus, s'ils mettent à jour leur format de fichier, ils ** devraient ** mettre à jour leur fonctionnalité d'exportation et vous n'aurez pas à la réécrire.
Re: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?J'avais l'habitude d'utiliser un logiciel similaire, mais maintenant les données DAT ont changé et le logiciel n'est plus disponible.

Re: Comment extraire les données spécifiées d'un fichier hexadécimal JSL vers un fichier décimal?Ce n'est pas un vrai logiciel. Je voulais dire quel que soit le logiciel qui produit ce fichier de données.