CONVERSIONE ENCODING IN IMMAGINI

martedì 27 settembre 2005 - 14.33

TIAGO Profilo | Newbie

Ciao ragazzi, ho salvato in un db delle immagini come blob , tramite vb in access, con formato .bmp utilizzando il vecchio "appendchunk". Così facendo le ho salvate su db in formato Unicode(2 byte per carattere) ed effettivamente la dimensione sul db delle immagini risulta doppia. Il problema non è questo bensì quando ora tento di visualizzare in una form (o web form) utilizzo una procedura già spiegata in un altro thread di questo forum , ma risulta un errore in fase di apertura del file.
Questo perchè penso che dipenda dall'encoding dell'immagine. Ho provato allora a fare una brutta cosa prendendo il file e sopprimendo i byte pari così da riportarmi in un formato che riesca a leggere ed effettivamente ora l'immagine viene caricata e visualizzata, ma risulta comunque corrotta in qualche sua parte.

Questa è la procedura, forse c'è qualche altro metodo o qualche classe che mi converta l'encoding Unicode senza fare il ciclo che ho fatto? ( che poi non mi funziona in pieno....)

byte[] dati = new byte[0];
char[] datichars = new char[0];
dati=(byte[])foto1.ARCHIVIO_FOTO.Rows[0]["FOTO"];
byte[] data2 = new byte[dati.Length/2];
for(int i=0, j=0; j<dati.Length; i++, j=j+2)
{
data2[i] = dati[j];
}
MemoryStream ms=new MemoryStream(data2,0,data2.Length);
Bitmap b = new System.Drawing.Bitmap(new System.IO.MemoryStream(data2));
pictureBox1.Image = b;


//in "archivio_foto" ho il dataset con le foto. ciao!

TIAGO Profilo | Newbie

Ho usato il vecchio Ado perchè dovevo fare l'applicazione in Access ancora tempo fà, e ancora non programmavo sotto piattaforma dot.net. Cosi' le immagini che ho salvato su Database e che ora devo visualizzare sono bitmap in formato Unicode. Ho parlato di picture perchè probabilmente avevo provato a visualizzarle inizialmente su una windows form, e ora debbo farlo sul web ma questo non cambia il problema che ho sottoposto.


Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5