none
Lecture fichier dans une Universal App RRS feed

Réponses

  • Voilà, j'ai trouvé.
    Voici le code si ca peut aider :

     public static async void Read_Datas()
            {
                var file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///Data/Monfichier.csv"));
    
                using (var sr = new StreamReader(await file.OpenStreamForReadAsync()))
                {
                    string line;
                    while ((line = sr.ReadLine()) != null)
                    {
                        var values = line.Split(';');
                        var phr = new Phrase();
    
                        phr.Fr = values[0].Trim();
                        phr.En = values[1].Trim();
    
                        maliste.Add(phr);
                    }
                }
            }
    Sans oublier de passer le fichier en "CONTENU" sur l'action de génération (propriété dans VS)

    Christophe Peugnet
    http://www.peug.net
    sodeasoft.com


    lundi 6 octobre 2014 17:26

Toutes les réponses

  • Voilà, j'ai trouvé.
    Voici le code si ca peut aider :

     public static async void Read_Datas()
            {
                var file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///Data/Monfichier.csv"));
    
                using (var sr = new StreamReader(await file.OpenStreamForReadAsync()))
                {
                    string line;
                    while ((line = sr.ReadLine()) != null)
                    {
                        var values = line.Split(';');
                        var phr = new Phrase();
    
                        phr.Fr = values[0].Trim();
                        phr.En = values[1].Trim();
    
                        maliste.Add(phr);
                    }
                }
            }
    Sans oublier de passer le fichier en "CONTENU" sur l'action de génération (propriété dans VS)

    Christophe Peugnet
    http://www.peug.net
    sodeasoft.com


    lundi 6 octobre 2014 17:26
  • Heu...y'a plus simple :

    var

    lines = FileIO.ReadLinesAsync(awaitApplicationData.Current.LocalFolder.GetFileAsync("MonFichier.csv"));


    Richard Clark
    Consultant - Formateur .NET
    http://www.c2i.fr
    Depuis 1996: le 1er site .NET francophone

    mardi 7 octobre 2014 06:24
  • Le modèle retenu par MS pour l'accès aux fichiers avec les Universal App, c'est celui de Windows 8 (et pas de SL pour Phone). Donc si tu as une question sur ce genre de sujet, faut faire une recherche sur Windows RT.

    De plus dans l'exemple que tu cites, ils utilisent ms-appx:/// qui est le ns pour tout (genre c:\). C'est pas terrible de l'utiliser celui là car tu pourrais te retrouver dans un folder ou tu n'as pas les droits.

    Pour l'accès aux données, le ns c'est ms-appdata:///

    Oui je sais, c'est pas super clair ;-)


    Richard Clark
    Consultant - Formateur .NET
    http://www.c2i.fr
    Depuis 1996: le 1er site .NET francophone

    mardi 7 octobre 2014 06:29
  • Mon fichier data fait parti du package et n'est pas généré par l'utilisateur ; il ne se trouve pas dans le local/temp ou roaming , je n'utilise donc pas  ms-appdata:///

    Christophe Peugnet
    http://www.peug.net
    sodeasoft.com

    mardi 7 octobre 2014 06:34
  • Dans ce cas :

    var folder = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync("MonDossier");
    var lines = await FileIO.ReadLinesAsync(await folder.GetFileAsync("toto.txt"));



    Richard Clark
    Consultant - Formateur .NET
    http://www.c2i.fr
    Depuis 1996: le 1er site .NET francophone

    mardi 7 octobre 2014 06:50