2010-12-22 23 views
6

cuando intento abrir un archivo en una aplicación de WP7:La excepción IsolatedStorageFileStream se lanza cuando se abre el archivo?

IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication(); 
IsolatedStorageFileStream nameXmlFile = new IsolatedStorageFileStream("Names.xml", System.IO.FileMode.Open, isf); 

que recibo el siguiente error:

Operation not permitted on IsolatedStorageFileStream.

No estoy seguro de por qué no se abre porque he usado la exacta código en otro lugar en mi aplicación y funciona bien. ¿Alguna pista de por qué esto está sucediendo?

EDITAR

que utiliza el código siguiente para agregar el archivo en el almacenamiento aislado en el Application_Launching Evento App.xaml.cs:

IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication(); 
IsolatedStorageFileStream feedXmlFile = new IsolatedStorageFileStream("Names.xml",System.IO.FileMode.Create, isf); 
+0

¿cómo almacena este Names.xml? –

+0

Agregué el código que utilicé arriba. – loyalpenguin

Respuesta

4

Uno de los problemas con el uso del constructor IsolatedStorageFileStream es que la excepción generada tiene información limitada. El método alternativo OpenFile tiene un conjunto más rico de excepciones.

Como regla general, si una API le permite hacer lo mismo con un constructor o con un método, vaya con el método. En este caso probar este código en su lugar: -

IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication(); 
IsolatedStorageFileStream nameXmlFile = isf.OpenFile("Names.xml", System.IO.FileMode.Open); 

Si esto no funciona habrá al menos reducido la causa potencial.

Esto puede parecer obvio, pero en su código de creación, ¿realmente ha escrito y ha cerrado el archivo que creó?

+0

Esto desencadenó un pensamiento y fue correcto. En un método anterior me olvidé de cerrar la secuencia (Wow), y leí en algún lugar WP7 no puede procesar múltiples secuencias al mismo tiempo, así el error. Solo desearía que el error fuera un poco más específico ... ¡Gracias por ayudarme a resolver esto! – loyalpenguin

2

Excepción IsolatedStorage es un problema conocido whil incendios Application_Launching. more details

+0

El enlace está muerto. Pls actualización de enlace –

2

Cuando se ejecuta en una excepción durante el acceso a los archivos, la verificación de dos cosas:

Cuestiones relacionadas