Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Nothing Phone (4a) Pro cambia pelle: l'alluminio unibody sostituisce la trasparenza integrale, portando una solidità inedita. Sotto il cofano troviamo uno Snapdragon 7 Gen 4 che spinge forte, mentre il display è quasi da top dig amma. Con un teleobiettivo 3.5x e la Glyph Matrix evoluta, è la prova di maturità di Carl Pei. C'è qualche compromesso, ma a 499EUR la sostanza hardware e la sua unicità lo rendono un buon "flagship killer" in salsa 2026
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-10-2011, 19:41   #1
graffio83
Member
 
Iscritto dal: Oct 2005
Messaggi: 228
[C++ .NET] convertire endian di un file

Salve a tutti
ecco il problema
Codice:
FILE *mioFile;
fopen("miofile.bin,rb);
fread(ecc ecc
Il fatto è che il file binario è un Big endian e la mia macchina (Intel) è little endian

come posso convertire il file
ho trovato 1000 modi per convertire un byte...
ma un intero file?

grazie
graffio83 è offline   Rispondi citando il messaggio o parte di esso
Old 10-10-2011, 23:24   #2
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
L'endianess non influisce sull'ordine dei bit in un byte.
Per convertirlo devi conoscerne la struttura dati, altrimenti rischi di distruggere i dati durante la conversione.
Ad esempio se il tuo file fosse un UTF-16BE puoi convertire a blocchi di 2 byte alla volta, se invece i tuoi dati fossero custom del tipo 2byte-4byte-2byte devi convertire ogni singolo blocco a seconda della sua dimensione, ovvero non puoi trattarli come se fossero 2 campi da 4byte.
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2011, 08:28   #3
graffio83
Member
 
Iscritto dal: Oct 2005
Messaggi: 228
sono blocchi di due byte alla volta...
graffio83 è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2011, 09:56   #4
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da graffio83 Guarda i messaggi
sono blocchi di due byte alla volta...
Quindi la procedura è:
leggere un blocco di dati (al limite anche tutto il file)
convertire l'endianess a blocchi di 2 byte alla volta
salvare su file
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2011, 10:25   #5
graffio83
Member
 
Iscritto dal: Oct 2005
Messaggi: 228
in pratica apro un file con un immagine, .bin
è a 16bit la metto in un vettore Unsigned short int
per quello che mi hanno comunicato è a blocchi di 2 byte ma non devo salvarla su file, mi basta tenerla in un vettore convertita
graffio83 è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2011, 20:23   #6
graffio83
Member
 
Iscritto dal: Oct 2005
Messaggi: 228
Nessuno???
graffio83 è offline   Rispondi citando il messaggio o parte di esso
Old 12-10-2011, 08:40   #7
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da graffio83 Guarda i messaggi
Nessuno???
Ma qual è il tuo problema?
La procedura per convertire il file è quella che ti ho indicato.
Cosa ti manca?
La conversione dell'endianess?
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 12-10-2011, 09:20   #8
graffio83
Member
 
Iscritto dal: Oct 2005
Messaggi: 228
esatto, non riesco proprio a capir dove metter mano...

neanche se va fatto prima o dopo l'fread, quindi se farlo direttamente sul vettore letto e sul file prima della lettura...

sono nuovo dell'ambiente, molto molto nuovo

sorry
graffio83 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico Recensione Nothing Phone (4a) Pro: finalmente in...
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Razer Kishi V2 a soli 59,99€ su Amazon: ...
Dallo scantinato di Jobs al NeXT: apre l...
Trasformare il PC in una workstation AI ...
ECOVACS DEEBOT T80 OMNI a soli 499€: il ...
Gli iPhone e i mid-range Samsung guidano...
Maxi offerte Amazon sui grandi elettrodo...
Intel continuerà a produrre Rapto...
Sky Wifi potenzia la copertura: nuovo ac...
Il chiplet GaN più sottile al mon...
Galaxy S26 a 929€ con Galaxy Watch 8 in ...
Tineco FLOOR ONE S9 Scientist: la nuova ...
IBM porta il quantum computing nella chi...
Google AI Overviews sbaglia poco, ma tan...
Il futuro iPhone Fold ha un nome: Apple ...
iPhone 17 da 256GB torna a 899€ (minimo ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 09:22.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v