Comment enregistrer une photo

Résolu
Signaler
Messages postés
24
Date d'inscription
jeudi 27 avril 2006
Statut
Membre
Dernière intervention
23 juin 2007
-
Messages postés
24
Date d'inscription
jeudi 27 avril 2006
Statut
Membre
Dernière intervention
23 juin 2007
-
Bonjour a tous.

Alors je vous prenente mon problème que voici.
J'ai ouvert des fichiers images et j'ai copier le contenu dans un textbox.
Et j'ai sauvegarder le contenu de la textbox dans une base de donneés pour pouvoir récuperer le contenu plus tard.

Jusque la pas de problème.
 Mais voila au moment ou je veut récupere le contenu de ma base de donnes et que je veut enregistre le contenu sur mon disque dur et bien j'ai bien le fichier que se crée mais je n'arrive pas a enregistrer sa taille donc il m'est imposible de retrouver l'image.

A savoir que le contenu est bien identique car j'ai fait un autre programe qui a comparer le contenu de 2 fichiers identique.

Pour moi le problème vient de la façon que j'enregistre ma photo car je ne le lui dit pas combien de pixcel il y a .

Voila se que je fait pour récupere le contenu du fichier:
'On ouvre le fichier selectionne et on recupere le contenu
Open "C:\images.bmp" For Input As #1
While Not EOF(1)
  Input #1, A$
  Text1.Text = Text1.Text & A$ ' Ajout dans le textbox1
Wend
Close #1

Et pour enregistrer:
' On va créer le fichier
Set FSys = CreateObject("Scripting.FileSystemObject")
Set MonFic = FSys.CreateTextFile("C:\images.bmp")
With MonFic 'Pour écrire dans le fichier
.writeLine Text1.Text
End With

Merci par avance

6 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
48
trop de blabla

photo = hexa, fin de l'histoire

l'hexa ne s'ouvre pas avec un input, mais avec un tableau de byte.
et rien ne dit que ta base accepte le champs texte pour de l'hexa ; le type stream est là pour çà!

voici tout de même le code pour ouvrir et enregistrer les data  :

Option Explicit

Private Sub Form_Load()
'   récupère le fichier image QUI DOIT EXISTER
!!!!
    Dim MesBytes() As Byte
    MesBytes = FichierVersTableauDeByte("C:\mon_image.jpg")

'   enregistre sous un autre nom
    Call CreateFileFromByteArray("C:\ma_nouvelle_image.jpg", MesBytes)

'   affiche cette
nouvelle image pour preuve...
    Me.Picture = LoadPicture("C:\ma_nouvelle_image.jpg")
End Sub

Private Function FichierVersTableauDeByte(ByVal
CheminFichier As
String) As
Byte()
    Dim fff As Integer
    fff = FreeFile
    Open CheminFichier For Binary As #fff
    ReDim FichierVersTableauDeByte(LOF(fff) - 1)
    Get #fff, , FichierVersTableauDeByte
    Close #fff
End Function

Private Sub CreateFileFromByteArray(ByVal
sPath As
String, ByRef aBytes() As Byte)
    Dim FF As Integer
    FF = FreeFile
    Open sPath For Binary As #FF
        Put #FF, , aBytes
    Close #FF
End Sub

++
PCPT  [AFCK]
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
27
Bonjour,
Quelle drôle d'idée que celle d'enregistrer dans un fichier texte les données d'un fichier bmp !


Quel est donc l'idée ?
Messages postés
24
Date d'inscription
jeudi 27 avril 2006
Statut
Membre
Dernière intervention
23 juin 2007
1
Bonjour, je sais que c'est "CreateTextFile" qui ne va pas j'ai essayer
CreateImagesFile, CreateImages, CreateImage
Mais je ne trouve pas le bon argument.
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
27
Je ne comprends pas...
Où sont donc tes photos originelles ?


Sois précis car là... je ne vois vraiment pas à quoi correspondrait l'idée d'ue l'utilisation d'une textbox et d'un fichier texte ...
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
27
Question subsidiaire : parviens-tu à afficher directement ces photos sdans une pictureBox ?
Messages postés
24
Date d'inscription
jeudi 27 avril 2006
Statut
Membre
Dernière intervention
23 juin 2007
1
Bonjour,


Merci PCPT c'est exactement se que je rechercher moi je penser ouvrir le ficher en format texte or comme tu le dit en Hexa.


Apres si ma base ne le prend pas c'est pas trop grave il me suffit de convertir .


Encore merci