2010-09-02 18 views

Respuesta

4

El almacenamiento sin conexión es un almacenamiento interno. No está destinado a exportar algunos archivos a un formato específico/carpeta específica en el disco.

2

Puede usar localstorage, pero eso solo le permite almacenar algo en el almacenamiento interno de los navegadores (no puede decidir dónde y cómo escribir datos).

También hay una API de archivos, pero es en sus primeras etapas y, por ahora, no permite almacenar archivos de forma arbitraria en el cliente:

HTML 5 File API

3

La web almacena los datos de la API de almacenamiento como par [clave, valor] donde ambas claves, el valor son Cadenas.

Por lo que los datos en cualquier formato deben cumplir con este mecanismo para el almacenamiento local. Así, por ejemplo, si tiene un objeto JSON como:

{ 
    name:'John', 
    gender:'male' 
} 

Puede almacenarlo (a través de JavaScript) después de pasar como una cadena como:

localStorage.setItem("myObj","{name:'John',gender:'male'}"); 

Para objetos JSON, utilice JSON. stringify() para convertirlos a cadenas y use JSON.parse() para volver a leerlos.

0

Digamos que usted ha creado matriz u objeto en esta manera.

var arrayOrObject = [{obj1:{name:John, age:16}},{obj2:{name:Jane, age:17}}]; 

Puede guardar esta información en dispositivos locales utilizando localStorage.

if (typeof(localStorage) == 'undefined') { 
    alert('Your browser does not support HTML5 localStorage. Try upgrading.'); 
} 
else { 
    try {     
     localStorage.setItem("storedArrayOrObject", JSON.stringify(arrayOrObject)); 
          //saves to the database, “key”, “value”     
    } catch (e) { 
     if (e == QUOTA_EXCEEDED_ERR) { 
      alert('Quota exceeded!'); //data wasn’t successfully saved due to quota exceed so throw an error 
     } 
    } 
} 

para obtener los datos en la matriz o estructura objeto:

var getStoredArrayOrObject = JSON.parse(localStorage.getItem('storedArrayOrObject'));` 

para eliminar los datos localStorage:

localStorage.removeItem('storedArrayOrObject'); 

no recomiendan esto, pero disponibles:

localStorage.clear();