Search code examples
androidxamarinstorageinternal

How to use Internal Storage of Android in Xamarin?


I want to be able to use Android's internal storage. I found some code snippets like:

 string path = Application.Context.FilesDir.Path;
 var filePath = Path.Combine(path, "test.txt");
 System.IO.File.WriteAllText(filePath, "Hello World");

But I could not figure out what Application is in here.

Is there any solution for that or different perspective? Thanks :)


Solution

  • Use this:

    string path = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
    string filename = System.IO.Path.Combine(path, "testfile.txt");
    
    // Write
    using (var streamWriter = new System.IO.StreamWriter(filename, true))
    {
        streamWriter.WriteLine(DateTime.UtcNow);
    }
    
    // Read
    using (var streamReader = new System.IO.StreamReader(filename))
    {
        string content = streamReader.ReadToEnd();
        System.Diagnostics.Debug.WriteLine(content);
    }