J'essaye de lire dans quelques octets d'un fichier dans Java et puis crée des masques de bit à partir de certaines des données et des longueurs et des offsets des autres. Je suis si proche de faire fonctionner mon programme, mais je continue à obtenir des données brouillées à l'autre bout.C et le code Python à l'aide de Java
Je suis 90% sûr que mon problème est quelque chose à voir avec la façon dont Java est en train de lire les octets.
Il y a un certain Python et le code C que je fonde ma conception sur mais je n » Je sais comment le convertir en Java. J'ai essayé d'envelopper un byte [] dans un byteBuffer mais je reçois toujours des résultats confus.
C'est ce que je suis en train de faire ma tête:
bitmask: = copie InputBuffer [inputIndex] comme nombre entier de 32 bits au format petit-boutiste - doit être quatre octets
Dans C cela se fait comme:
bitmask= (inputBuffer[inputIndex + 3] << 24) | (inputBuffer[inputIndex + 2] << 16) |
(inputBuffer[inputIndex + 1] << 8) | inputBuffer[inputIndex];
En Python c'est: bitmask= unpack("<L", inputBuffer[inputIndex:inputIndex + 4])[0]
Jusqu'à ce que je peux obtenir ce travail correctement mon programme tombe.
Quelqu'un peut-il fournir des informations sur la meilleure façon de mettre en œuvre cela?
Un grand merci
Tony
S'il vous plaît poster le code Java que vous essayez d'utiliser. –
J'ai mis un peu du code ici http://www.mrthaggar.com/partialCode.txt Excuses pour que ce soit un peu brouillon, j'espère que vous pouvez comprendre ce que j'essaye de faire de lui! ! – Tony
@ user583240: Veuillez ajouter le code Java que vous essayez d'utiliser ** à cette question **. Veuillez ajouter la partie exacte supposée correspondre aux parties Python et C. Veuillez ** mettre à jour ** la question. –