Idioma: HTML | XAML

Guia de início rápido: dados de aplicativo locais (XAML)

Applies to Windows and Windows Phone

Saiba como armazenar e recuperar configurações e arquivos do repositório local de dados de aplicativo.

Mapa: Como este tópico está relacionado aos outros? Veja:

Obter os contêineres das configurações e dos arquivos do aplicativo

Use a propriedade ApplicationData.LocalSettings para obter as configurações de um objeto ApplicationDataContainer. Use a propriedade ApplicationData.LocalFolder para obter os arquivos de dentro de um objeto StorageFolder.


Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
Windows.Storage.StorageFolder localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;

As próximas seções usam as variáveis localSettings e localFolder desta seção.

Gravar dados em uma configuração

Use a propriedade ApplicationDataContainer.Values para acessar as configurações no contêiner localSettings que obtivemos na etapa anterior. Este exemplo cria uma configuração chamada exampleSetting.


// Simple setting

localSettings.Values["exampleSetting"] = "Hello Windows";

Um objeto ApplicationDataCompositeValue contém configurações que devem ser acessadas atomicamente. Este exemplo cria uma definição composta nomeada exampleCompositeSetting e a adiciona ao contêiner localSettings.


// Composite setting

Windows.Storage.ApplicationDataCompositeValue composite = new Windows.Storage.ApplicationDataCompositeValue();
composite["intVal"] = 1;
composite["strVal"] = "string";

localSettings.Values["exampleCompositeSetting"] = composite;

Chame o método ApplicationDataContainer.CreateContainer para criar um contêiner de configurações. Este exemplo cria um contêiner nomeado exampleContainer e adiciona uma configuração nomeada exampleSetting. O valor Always da enumeração de ApplicationDataCreateDisposition indica que o contêiner deve ser criado se ele já não existir.


// Setting in a container

Windows.Storage.ApplicationDataContainer container = 
   localSettings.CreateContainer("exampleContainer", Windows.Storage.ApplicationDataCreateDisposition.Always);

if (localSettings.Containers.ContainsKey("exampleContainer"))
{
   localSettings.Containers["exampleContainer"].Values["exampleSetting"] = "Hello Windows";
}

Ler dados de uma configuração

Use a propriedade ApplicationDataContainer.Values para acessar a configuração exampleSetting no contêiner localSettings.


// Simple setting

Object value = localSettings.Values["exampleSetting"];

Use a propriedade ApplicationDataContainer.Values para acessar a configuração exampleCompositeSetting no contêiner localSettings.


// Composite setting

Windows.Storage.ApplicationDataCompositeValue composite = 
   (Windows.Storage.ApplicationDataCompositeValue)localSettings.Values["exampleCompositeSetting"];

if (composite == null)
{
   // No data
}
else
{
   // Access data in composite["intVal"] and composite["strVal"]
}

Use a propriedade ApplicationDataContainer.Values para acessar a configuração exampleSetting no contêiner exampleContainer.


// Setting in a container

bool hasContainer = localSettings.Containers.ContainsKey("exampleContainer");
bool hasSetting = false;

if (hasContainer)
{
   hasSetting = localSettings.Containers["exampleContainer"].Values.ContainsKey("exampleSetting");
}

Gravar dados em um arquivo

Use as APIs de arquivo, como Windows.Storage.StorageFolder.CreateFileAsync e Windows.Storage.FileIO.WriteTextAsync, para criar e atualizar um arquivo no armazenamento de dados do aplicativo local. Este exemplo cria um arquivo chamado dataFile.txt no contêiner localFolder e escreve a data e hora atual no arquivo. O valor ReplaceExisting da enumeração CreationCollisionOption indica para substituir o arquivo se ele já existir.

  • Applies to Windows Phone

Em dispositivos do Windows Phone, é feito backup dos dados do aplicativo por padrão. Se não desejar que seja feito backup de um arquivo, salve-o na subpasta LocalCache do armazenamento local do aplicativo.


async void WriteTimestamp()
{
   Windows.Globalization.DateTimeFormatting.DateTimeFormatter formatter = 
       new Windows.Globalization.DatetimeFormatting.DateTimeFormatter("longtime");

   StorageFile sampleFile = await localFolder.CreateFileAsync("dataFile.txt", 
       CreateCollisionOption.ReplaceExisting);
   await FileIO.WriteTextAsync(sampleFile, formatter.Format(DateTime.Now));
}

Ler dados de um arquivo

Use as APIs de arquivo, como Windows.Storage.StorageFolder.GetFileAsync, Windows.Storage.StorageFile.GetFileFromApplicationUriAsync e Windows.Storage.FileIO.ReadTextAsync para abrir e ler um arquivo no repositório local de dados de aplicativo. Este exemplo abre o arquivo dataFile.txt criado na etapa anterior e lê a data do arquivo. Para saber detalhes de como carregar recursos de arquivos de vários locais, veja Como carregar recursos de arquivos.


async void ReadTimestamp()
{
   try
   {
      StorageFile sampleFile = await localFolder.GetFileAsync("dataFile.txt");
      String timestamp = await FileIO.ReadTextAsync(sampleFile);
      // Data is contained in timestamp
   }
   catch (Exception)
   {
      // Timestamp not found
   }
}

Exclua as configurações quando não precisar mais delas

Chame o método ApplicationDataContainerSettings.Remove para excluir a configuração exampleSetting ao concluí-la.


// Delete simple setting

localSettings.Values.Remove("exampleSetting");

Chame o método ApplicationDataCompositeValue.Remove e exclua a configuração composta exampleCompositeSetting quando você não mais precisar dela.


// Delete composite setting

localSettings.Values.Remove("exampleCompositeSetting");

Chame o método ApplicationDataContainer.DeleteContainer e exclua o contêiner de configurações exampleContainer quando não precisar mais dele.


// Delete container

localSettings.DeleteContainer("exampleContainer");

Tópicos relacionados

Tarefas
Como carregar recursos de arquivos
Início rápido: dados de aplicativo em roaming
início rápido: dados temporários de aplicativo
Conceitual
Acessando dados de aplicativo com o Tempo de Execução do Windows
Referência
Windows.Storage.ApplicationData
Windows.Storage.ApplicationDataCompositeValue
Windows.Storage.ApplicationDataContainer
Windows.Storage.ApplicationDataContainerSettings
Amostras
Exemplo de dados de aplicativos

 

 

Mostrar:
© 2014 Microsoft