private async void client_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e) { try { // TODO changer l'emplacement de sauvergarde et nettoyer le code byte[] buffer = new byte[e.Result.Length]; //Store bytes in buffer, so it can be saved later on await e.Result.ReadAsync(buffer, 0, buffer.Length); //Store to isolatedstorage IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication(); //Create file using (IsolatedStorageFileStream stream = file.OpenFile(title + ".mp3", FileMode.Create)) { //Write content stream to file await stream.WriteAsync(buffer, 0, buffer.Length); } // Access the file. StorageFolder local = Windows.Storage.ApplicationData.Current.LocalFolder; StorageFile storedFile = await local.GetFileAsync(title + ".mp3"); Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata metaData = new Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata(); // enregistre musique dans le dossier choisi MainPage.main.Dispatcher.BeginInvoke(new Action(delegate() { if (MainPage.main.FolderName.Text != "") { metaData.AlbumName = MainPage.main.FolderName.Text; } else { metaData.AlbumName = "YoudowSave"; } metaData.ArtistName = "Youdow"; metaData.GenreName = ""; if (artist != "Artiste inconnu") { metaData.Name = artist + " - " + title; } else { metaData.Name = artist + " - " + title; } var ml = new MediaLibrary(); Uri songUri = new Uri(title + ".mp3", UriKind.RelativeOrAbsolute); var song = Microsoft.Xna.Framework.Media.PhoneExtensions.MediaLibraryExtensions.SaveSong(ml, songUri, metaData, Microsoft.Xna.Framework.Media.PhoneExtensions.SaveSongOperation.MoveToLibrary); MessageBox.Show("Téléchargement de \"" + title + "\" terminé !"); file.DeleteFile(title + ".mp3"); })); } catch (Exception ex) { MessageBox.Show("We could not finish your download. Error message: " + ex.Message); } }
private void webClient_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e) { if (e.Result == null) return; var isolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication(); using (isolatedStorageFile) { var isolatedStorageFileStream = isolatedStorageFile.CreateFile(currClip.aid.ToString()); int chunkSize = 4096; byte[] bytes = new byte[chunkSize]; int byteCount; while ((byteCount = e.Result.Read(bytes, 0, chunkSize)) > 0) { isolatedStorageFileStream.Write(bytes, 0, byteCount); } isolatedStorageFileStream.Close(); Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata metaData = new Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata(); metaData.ArtistName = currClip.artist; metaData.Name = currClip.title; metaData.GenreName = "vkontakte"; var ml = new MediaLibrary(); Uri songUri = new Uri(currClip.aid.ToString(), UriKind.RelativeOrAbsolute); var song = Microsoft.Xna.Framework.Media.PhoneExtensions.MediaLibraryExtensions.SaveSong (ml, songUri, metaData, Microsoft.Xna.Framework.Media.PhoneExtensions.SaveSongOperation.CopyToLibrary ); isolatedStorageFile.DeleteFile(currClip.aid.ToString()); } DownloadNext(); }
private void ApplicationBarIconButton_Click(object sender, EventArgs e) { Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata songMetadata = new Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata(); }