OVH Cloud OVH Cloud

changer date de création ou de modificatiob fichier JPG

29 réponses
Avatar
Dan
Bonjour à tous.
Je voudrais savoir quel est l' instruction me permettant de changer la date
de création ou de modification d'un fichier au format JPG.
D'avance merci de votre aide

9 réponses

1 2 3
Avatar
Jérémy Jeanson
Bon vu que tout le monde s'acharne sur ce pauvre fichier temps, voici un
exemple avec une stream (donc pas d'autre fichier que celui d'origine)

'path est le chemin vers le fichier "c:..."
Dim fs As New StreamReader(path)
Me.PictureBox1.Image = Image.FromStream(fs.BaseStream)
fs.Close()
fs.Dispose()
fs = Nothing

j'utilise un streamreader puis je créé une image à partir de cette
stream, après, à tout moment l'image d'origine reste accessible

--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net
Avatar
Jérémy Jeanson
oups j'avais oublié le code pour modifier la date dufichier par fileinfo

voici le code :)

Dim fi As New FileInfo(path)
fi.CreationTime = DateTime.Now

--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net
Avatar
Jérémy Jeanson
oups j'avais oublié le code pour modifier la date dufichier par fileinfo

voici le code :)

Dim fi As New FileInfo(path)
fi.CreationTime = DateTime.Now
--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net
Avatar
Jo
Bonjour,
Merci pour l'info sur StreamReader que je ne connaisais pas
n'ayant pas eu se probleme sur les modif de date

Cordialement
Jo

"Jérémy Jeanson" a écrit dans le message de groupe
de discussion :
Bon vu que tout le monde s'acharne sur ce pauvre fichier temps, voici un
exemple avec une stream (donc pas d'autre fichier que celui d'origine)

'path est le chemin vers le fichier "c:..."
Dim fs As New StreamReader(path)
Me.PictureBox1.Image = Image.FromStream(fs.BaseStream)
fs.Close()
fs.Dispose()
fs = Nothing

j'utilise un streamreader puis je créé une image à partir de cette stream,
après, à tout moment l'image d'origine reste accessible

--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net



Avatar
Dan
Bonjour.
Je viens de tester ton code ligne :
Dim fs As New StreamReader(path)

j'ai l'erreur suivante :
La résolution de surcharge a échoué, car aucun 'New' accessible ne
peut être appelé sans conversion restrictive...
J'ai peut-être loupé quelque chose.

"Jérémy Jeanson" a écrit dans le message de
news:
oups j'avais oublié le code pour modifier la date dufichier par fileinfo

voici le code :)

Dim fi As New FileInfo(path)
fi.CreationTime = DateTime.Now

--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net


Avatar
Jérémy Jeanson
? tu es bien sur du vb .net, pas du vb6 ?

hors mis un gros bug de visual studio ou une configuration un peu
spécial de celui-ci, les synthaxes suivantes doivent fonctioner

Dim fi As New FileInfo(path)

ou

Dim fi As FileInfo = New FileInfo(path)

ou encore

Dim fi As FileInfo
fi = New FileInfo(path)

PS: as tu pensés à inclure "imports system.io"
--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net
Avatar
Dan
Bonjour.
Oui je suis bien sûr vise le Basic.net et plus précisément sur studio
express 2008
l'erreur que j'ai et sur la ligne
Dim fs As New StreamReader(path) pour la variable fs et non pour la
variable fi
par ailleurs j'ai bien inclure "imports system.io"
j'ai tout inclus dans un module pour plus de clarté mais cela ne change rien
as-tu de ton côté écrit une petite procédure pour vérifier ce code ?
si oui peut-être pourrais-tu me le zipper, voici mon mail en retirant spam

A+
Dan

Jérémy Jeanson" a écrit dans le message de
news:u$
? tu es bien sur du vb .net, pas du vb6 ?

hors mis un gros bug de visual studio ou une configuration un peu spécial
de celui-ci, les synthaxes suivantes doivent fonctioner

Dim fi As New FileInfo(path)

ou

Dim fi As FileInfo = New FileInfo(path)

ou encore

Dim fi As FileInfo
fi = New FileInfo(path)

PS: as tu pensés à inclure "imports system.io"
--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net


Avatar
Dan
Bonjour Jo.
Merci pour l'exemple que tu m'as envoyé, c'est parfaitement cela, rien ne
vaut un bon exemple en tout cas.
Je peux enfin continuer sur mon projet car je suis resté bloqué sur ce sujet
pendant un bon moment.
Merci également à Jérémie et à tous ceux qui ont bien voulu se pencher de
près ou de loin à mon problème.
Je ne doute pas que j'aurais prochainement d'autres raisons de m'adresser à
ce forum,
l'aventure continue.
Dan
"Jo" a écrit dans le message de
news:
Bonsoir Dan,
si le fichier est en cours d'utilisation normal

ce que tu peut faire par exemple si tu veut quelle soit afficher en même
temps ( a voir y a surement mieux a faire mais sa marche)
Dim monimage As String = "D:Mes imagesAnimauxAnimaux2.jpg"
Dim monimagetemp As String =
My.Computer.FileSystem.SpecialDirectories.Temp & "Animaux2.jpg"
My.Computer.FileSystem.CopyFile(monimage, monimagetemp)
Me.PictureBox1.Image = Image.FromFile(monimagetemp)
'
My.Computer.FileSystem.GetFileInfo(monimage).CreationTime = Now '
#07/09/2006 16:16:10#

et l'effacer du dossier temp en quittant l'appli.

Cordialement
Jo

"Dan" a écrit dans le message de groupe de
discussion : 49073ae7$0$28670$
Je m'y suis remis et je recupere le message suivant lors de
l'execution
Le processus ne peut pas accéder au fichier 'E: ....., car il est en
cours d'utilisation par un autre processus.
il sagit d'un fichier jpg que j'affiche dans ine picturebox,il doit
sans doute y avoir une instruction d'initialisation que j'ignore
par ailleur j'imagine que la date que je veux indiquer doit etre de la
forme

System.IO.FileInfo

puis dans ma sub

dim ddate = #07/09/2006 16:16:10#
fich = "d:....."
My.Computer.FileSystem.GetFileInfo(fich).CreationTime = ddate

a moins qu'il ne faille le metre dans un modul




"Jo" a écrit dans le message de
news:
Bonjour,

oui bien sur mais je trouve ca tellement plus simple et plus clair

Cordialement
Jo

"Jérémy Jeanson" a écrit dans le message de
groupe de discussion :
Tu peux faire la même opération que de que te propose Jo en utilisant
System.IO.FileInfo
--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net











Avatar
Jacquouille14
Dan a écrit :
Bonjour Jo.
Merci pour l'exemple que tu m'as envoyé, c'est parfaitement cela, rien
ne vaut un bon exemple en tout cas.
Je peux enfin continuer sur mon projet car je suis resté bloqué sur ce
sujet pendant un bon moment.
Merci également à Jérémie et à tous ceux qui ont bien voulu se pencher
de près ou de loin à mon problème.
Je ne doute pas que j'aurais prochainement d'autres raisons de
m'adresser à ce forum,
l'aventure continue.
Dan
"Jo" a écrit dans le message de
news:
Bonsoir Dan,
si le fichier est en cours d'utilisation normal

ce que tu peut faire par exemple si tu veut quelle soit afficher en
même temps ( a voir y a surement mieux a faire mais sa marche)
Dim monimage As String = "D:Mes imagesAnimauxAnimaux2.jpg"
Dim monimagetemp As String =
My.Computer.FileSystem.SpecialDirectories.Temp & "Animaux2.jpg"
My.Computer.FileSystem.CopyFile(monimage, monimagetemp)
Me.PictureBox1.Image = Image.FromFile(monimagetemp)
'
My.Computer.FileSystem.GetFileInfo(monimage).CreationTime = Now '
#07/09/2006 16:16:10#





Bonjour,
J'étais arrivé à cette idée de copie. J'ai essayé de casser le lien
entre la picturebox et l'image en utilisant nothing, dispose et
refresh mais le lien reste. Pourtant il doit bien y avoir une solution.
J'ajouterais à l'idée que si on utilise des images en "chaîne" on peut
ajouter ",true" (==>copyfile(monimage, monimagetemp, true) la nouvelle
image écrase l'ancienne de même nom sans préavis. (nota: mettre true
car -1 ne fonctionne pas)

--
Jacques dit Jacquouille
1 2 3