[ad_1]
J’ai essayé d’obtenir l’image à partir d’une URL, puis d’écrire l’image sur le disque sans succès.
Quelqu’un peut-il m’aider ?
Exemple d’URL :
https://static.tvmaze.com/uploads/images/medium_portrait/244/610854.jpg
Le code actuel est :
try { using var client = new HttpClient(); var getStream = client.GetStreamAsync(webURL); using var fileStream = new FileStream(imagePath,FileMode.Create,FileAccess.Write); return true; }
Il écrit toujours une image jpg vide.
Cependant, lorsque j’exécute directement l’URL, l’image s’affiche.
Ce que j’ai essayé :
J’ai essayé d’utiliser une récupération comme je le fais pour les données Json. Mais ça ne marche pas.
Solution 1
Voici comment je procède :
WebClient wc = new WebClient(); outPath = Path.Combine(KnownFolders.Downloads.Path, $"{imageFileName}.{imageFileExtension}"); wc.DownloadFile(imageUrl, outPath);
Solution 2
Je ne fais que cracher, mais quelque chose comme ça devrait être possible.
C#
private HttpClient httpClient; public async Task DownloadImageAndSaveAsync(string sourceFile, string outputFolder, string outputFileName) { try { using Stream fileStream = await httpClient.GetStreamAsync(fileUrl); Directory.CreateDirectory(outputFolder); string path = Path.Combine(outputFolder, outputFileName); using FileStream outputFileStream = new FileStream(path, FileMode.CreateNew); await fileStream.CopyToAsync(outputFileStream); } catch (Exception ex) { // If you can do some exception handling, do it here... } }
[ad_2]
コメント