none
Cargar un archivo en una aplicación de Windows 8 RRS feed

  • Pregunta

  • Estoy programando en C# una aplicación para Windows 8 en metro. Soy nuevo en esto, básicamente es mi primera aplicación para metro.

    Lo que deseo saber es cual es el equivalente de un OpenFileDialog en este tipo de aplicaciones, ya que necesito abrir un archivo .txt desde mi aplicación, pero que el usuario selecciones dicho archivo y no he encontrado la forma. Espero que también me indiquen como leer dicho archivo, es decir guardar su contenido, obtener la ruta, nombre, etc.

    Muchas gracias por su ayuda.

    lunes, 19 de agosto de 2013 9:20

Todas las respuestas

  • Hola , En ese enlace está lo que te haga falta. http://msdn.microsoft.com/es-ES/library/windows/apps/hh758325 Saludos
    lunes, 19 de agosto de 2013 17:08
  • Hola,

     Aparte del enlace que te indica Mariano, por lo que indicas necesitas un diálogo, en Windows Store es un FileOpenPicker, te devuelve un StorageFile que puedes abrir como un Stream, aunque es un stream nativo y puedes leer directamente con sus métodos o un DataReader, también lo puedes convertir a un Stream de .NET y usar un StreamReader, por ejemplo:

    FileOpenPicker openPicker = new FileOpenPicker();
    openPicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary;
    openPicker.FileTypeFilter.Add(".txt");
    
    StorageFile file = await openPicker.PickSingleFileAsync();
    if (file != null)
    {
        using (var stream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read))
        {
            var netStream=stream.AsStreamForRead(); //puedes convertir los streams nativos a .net
            using (StreamReader reader = new StreamReader(netStream))
            {
                var result = reader.ReadToEnd();
                System.Diagnostics.Debug.WriteLine(result);
            }
        }
    }


    Juan Manuel Servera
    twitter: @jmservera
    mi blog: http://jmservera.com
    Únete al grupo de WP7 en LinkedIn
    MCPD WP7 Developer - MCTS Sharepoint 2010 Application Development


    miércoles, 21 de agosto de 2013 13:33