2016-12-22 3 views
0

Ich möchte im Grunde eine Funktion für eine Android-App zu implementieren, um eine Textdatei zu öffnen und den Inhalt zu einer Zeichenfolge-Variable lesen. Ich kann das mit Android und Java handhaben, aber mit Formularen weiß ich nicht, wie ich das machen soll. Ich rate, Abhängigkeit Injektion, aber ein wenig Anleitung würde tun.Callback für die Behandlung von Absichten Xamarin.forms

+0

Ich denke App Links sind das, was Sie suchen? https://blog.xamarin.com/deep-link-content-with-xamarin-forms-url-navigation/ –

+0

@Rohit nicht genau. Ich möchte nur eine Textdatei mit meiner App auswählen und die Textdatei lesen. –

+0

möchten Sie es über Dateiauswahl tun? –

Antwort

1

Sie können bei Bedarf eine eigene Dateiauswahl erstellen und sie über den Abhängigkeitsdienst verwenden.

Es gibt ein Plugin, das tut, was Sie verlangen - FilePicker Plugin for Xamarin and Windows.

Damit können Sie Dateihandling von Ihrem PCL-Projekt behandeln. Der Code ist in GitHub verfügbar, wenn Sie ihn etwas anpassen möchten.

ZB:

private async Task PickFilesCommandHandler() 
{ 
     var file = await CrossFilePicker.Current.PickFile(); 
     var fileEntity = new FileEntity 
     { 
         FileName = file.FileName, 
         DataArray = file.DataArray 
     }; 
} 

Voll Beispiel in Github.

Für Byte-Array zu String-Konvertierung schauen Sie sich diese answer.

Oder verwenden Sie die folgende Methode über MemoryStream:

using (var ms = new MemoryStream(bytes)) 
{ 
    using (var streamReader = new StreamReader(ms)) 
    { 
     var str = streamReader.ReadToEnd(); 
    } 
} 
+0

Ich werde das ausprobieren und auf Sie zurückkommen. –

+0

Schnelle Frage, wie bekomme ich den Textwert, wenn es eine TXT-Datei Stringvariable ist? –

+0

Was Sie haben, ist ein Byte-Array. Konvertieren Sie das Byte-Array einfach in einen String. Die Antwort wurde ebenfalls aktualisiert. –

Verwandte Themen