2015-08-27 6 views

Antwort

4

Sie so etwas wie dieses benötigen:

public static async Task<string> ReadFileContent(string fileName, IFolder rootFolder) 
{ 
    ExistenceCheckResult exist = await rootFolder.CheckExistsAsync(fileName); 

    string text = null; 
    if (exist == ExistenceCheckResult.FileExists) 
    { 
    IFile file = await rootFolder.GetFileAsync(fileName); 
    text = await file.ReadAllTextAsync(); 
    } 

    return text; 
} 

zu verwenden:

IFolder rootFolder = FileSystem.Current.LocalStorage; 
IFolder myCoolFolder = await rootFolder.CreateFolderAsync("MyCoolForler", CreationCollisionOption.OpenIfExists); 
string fileContent = await this.ReadFileContent("MyCoolFile.txt", myCoolFolder); 
+0

Danke, aber ich weiß nicht, wo der Stammordner ist. Die Datei ist in die Assembly eingebettet. –

+1

IFolder rootFolder = FileSystem.Current.LocalStorage; Und Sie werden Root-Ordner haben, abhängig von der Plattform – Igor

-2

Sie sollten wie diese eingebettete Ressourcen lesen können:

var assembly = typeof(LoadResourceText).GetTypeInfo().Assembly; 
Stream stream = assembly.GetManifestResourceStream("WorkingWithFiles.PCLTextResource.txt"); 
string text = ""; 
using (var reader = new System.IO.StreamReader (stream)) { 
    text = reader.ReadToEnd(); 
} 

Xamarin hat eine großartige Anleitung, wie man mit ihnen arbeitet. https://developer.xamarin.com/guides/cross-platform/xamarin-forms/working-with/files/

+0

Sind Sie sicher, dass Sie System.IO in einem PCL-Projekt verwenden können? – JedatKinports