Come convertire un array di byte in un array int? Ho una matrice di byte che contiene 144 articoli e le modalità che ho provato sono abbastanza inefficienti a causa della mia inesperienza. Mi dispiace se è già stata data una risposta, ma non sono riuscito a trovare una buona risposta da nessuna parte.Come convertire un array di byte in un array int?
risposta
Semplice:
//Where yourBytes is an initialized byte array.
int[] bytesAsInts = yourBytes.Select(x => (int)x).ToArray();
Assicurati di includere System.Linq
con una dichiarazione secondo:
using System.Linq;
E se LINQ non fa per te, è possibile utilizzare questo invece:
int[] bytesAsInts = Array.ConvertAll(yourBytes, c => (int)c);
Ho ricevuto un errore: 'byte []' non contiene una definizione per 'Seleziona' e nessun metodo di estensione 'Seleziona' accetta un primo argomento di tipo 'byte []' potrebbe essere trovato (ti manca una direttiva using o un riferimento all'assembly?) – user1166981
@ user1166981: assicurati di fare riferimento a 'System.Linq' nel tuo progetto. (A proposito, quale versione del framework .NET stai prendendo di mira?) – Ryan
ok questo ha rimosso l'errore grazie – user1166981
Ho saputo che questo è un vecchio post, ma se cercavi in primo luogo di ottenere un array di interi pack DE in un array di byte (e potrebbe essere considerato il tuo array di byte di 144 elementi), questo è un modo per farlo:
var size = bytes.Count()/sizeof (int);
var ints = new int[size];
for (var index = 0; index < size; index++)
{
ints[index] = BitConverter.ToInt32(bytes, index * sizeof (int));
}
Nota: prendersi cura del endianness se necessario. (E nella maggior parte dei casi lo faccia)
Bello, cercavo questo. La gente sembra dimenticare che (int) byteVar non è la stessa cosa di convertire un bytearray in un int (ad esempio 4 byte per un intero) – Sliver2009
C'è una soluzione migliore: https://stackoverflow.com/a/5896716/238419 Che la domanda riguarda 'int []' a 'byte []' ma questa soluzione dovrebbe funzionare a prescindere –
ora è semplice come segue,
int[] result = Array.ConvertAll(bytesArray, Convert.ToInt32);
- 1. Int a byte array
- 2. Convertire un array di byte a una classe che contiene un array di byte in C#
- 3. Come convertire un int in un array di byte little endian?
- 4. Come convertire un array di byte in Base64 in Java?
- 5. Come convertire un XmlDocument in un array <byte>?
- 6. Come convertire int [] a byte []
- 7. Conversione di un array di byte Int a BCD
- 8. Come convertire un array di byte per lo streaming
- 9. C# Come convertire System.Net.ConnectStream in un byte [] (array)
- 10. Convertire un byte o int a BitSet
- 11. In Java, come posso convertire un InputStream in un array di byte (byte [])?
- 12. C#: Convertire array di byte in un galleggiante
- 13. Come convertire l'immagine in array di byte e array di byte in stringa Base64 in Android?
- 14. Come convertire da un array booleano a un array int in python
- 15. Come convertire un array float in byte di lunghezza 4 (array di char *)?
- 16. Converti int in array di byte in C?
- 17. Come convertire NSData in array di byte in iPhone?
- 18. Algoritmo per convertire un array multidimensionale in un array monodimensionale
- 19. Come convertire un array tipizzato JavaScript in un array JavaScript
- 20. Conversione di array di byte (array di caratteri) in un tipo intero (breve, int, lungo)
- 21. Convertire un array di stringhe nell'array di byte
- 22. Java: come "tagliare" un array di byte?
- 23. Come convertire array di byte in file ZIP
- 24. Come convertire lista di array in un array multidimensionale
- 25. Come convertire array di byte in qualsiasi tipo
- 26. come convertire l'immagine in array di byte in java?
- 27. Converti lista <byte[]> in un byte [] array
- 28. Memorizza un int in un array di caratteri?
- 29. Come convertire iTextPDF Documento di array di byte
- 30. Come posso convertire un array di float in un byte [] e viceversa?
Quali sono i modi che avete provato? – Marlon
Solo per citare - byte è 8 bit, int è 32 bit e si sta convertendo un byte in int. Tutti gli interi convertiti vanno da 0 a 255. – Bakudan