Question

J'ai un dossier dans mon application WPF « Images » qui a plusieurs fichiers .png avec leur Build Action réglé sur des ressources. Ceux-ci sont intégrés dans mon binaire puisque je peux les référencer dans XAML.

Je voudrais écrire ces sur le disque dans le dossier temp. Comment puis-je faire?

J'ai trouvé plusieurs réponses se référant aux ressources intégrées, mais pas seulement des ressources ordinaires.

Était-ce utile?

La solution

Réponse

 public static void ExtractFileFromResources(String filename, String location)
  {

     StreamResourceInfo sri =  System.Windows.Application.GetResourceStream(
      new Uri("pack://application:,,,/Images/" + filename));

     Stream resFilestream = sri.Stream;

     if (resFilestream != null)
     {
        BinaryReader br = new BinaryReader(resFilestream);
        FileStream fs = new FileStream(location, FileMode.Create);
        BinaryWriter bw = new BinaryWriter(fs);
        byte[] ba = new byte[resFilestream.Length];
        resFilestream.Read(ba, 0, ba.Length);
        bw.Write(ba);
        br.Close();
        bw.Close();
        resFilestream.Close();
     }

  }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top