Comment lire un fichier .mp3 (ou autre) dans une application UWP?

J’essaye ceci:

PlayMusic = new MediaElement(); PlayMusic.AudioCategory = Windows.UI.Xaml.Media.AudioCategory.Media; PlayMusic.Source = new Uri(@"C:\Users\UserName\Desktop\C:\Users\user\Desktop\Kill The Alarm - Begin Again.mp3"); PlayMusic.Play(); 

Aucun autre message d’erreur n’apparaît à l’écran (essayez catch catch clean through).

Désolé pour la description courte … Je peux très bien lire et comprendre l’anglais, mais il m’est difficile de parler et d’écrire.

Merci pour votre aide et votre réponse!

Chaque Windows Store App a trois dossiers. Un dossier local, un dossier itinérant et un dossier Temp. Chacun est accessible de la même manière. Local est destiné à stocker des actifs dans un dossier local spécifique à une application.

Voici la réponse:

 StorageFolder Folder = Windows.ApplicationModel.Package.Current.InstalledLocation; Folder = await Folder.GetFolderAsync("MyFolder"); StorageFile sf = await Folder.GetFileAsync("MyFile.mp3"); PlayMusic.SetSource(await sf.OpenAsync(FileAccessMode.Read), sf.ContentType); PlayMusic.Play(); 

MfG.

Vous ne pouvez pas simplement lire un fichier sur votre système de fichiers comme celui-ci avec les applications Windows Store.

Si vous voulez juste le tester:

  1. Ajouter le fichier à votre projet dans Visual Studio
  2. Changez “Action de construction” dans votre fichier en “Contenu”.
  3. Changez “Copier dans le répertoire de sortie” en “Copier toujours”.

Ce que vous voulez probablement faire est expliqué dans la section Lire les fichiers locaux sans sélecteur de cet article . Cela pourrait aussi être utile.

Placez mySong.mp3 dans votre dossier Assets. Ensuite, dans Visual Studio, cliquez avec le bouton droit de la souris sur votre dossier Assets et sélectionnez “Ajouter un élément existant”. Ajoutez mySong.mp3 à partir de votre dossier Assets. En XAML, ajoutez un lecteur:

   

En c #, mySong.mp3 sera lu lorsque vous définissez la source:

  Uri newuri = new Uri("ms-appx:///Assets/mySong.mp3"); myPlayer.Source = newuri; 

Enregistrez le MediaFailed -Event du MediaElement et vérifiez s’il est soulevé. ExceptionRoutedEventArgs transmis à la méthode doit contenir des informations sur les raisons pour lesquelles le fichier ne peut pas être lu.