Laden...

[update](WP7) IsolatedStorage...File Exists? Findet Datei nicht

Erstellt von ScoobyDoh! vor 13 Jahren Letzter Beitrag vor 13 Jahren 3.291 Views
ScoobyDoh! Themenstarter:in
69 Beiträge seit 2010
vor 13 Jahren
[update](WP7) IsolatedStorage...File Exists? Findet Datei nicht

Hallo,

ich hab folgendes Problem, ich möchte von einer xml Datei Information laden, in der App speicher ich bis jetz per Serialisierung meine Daten in ein XML ab und lese diese Datei dann auch wieder auf einer anderen Seite aus.

Jedoch will ich nun von einer Externen laden. Dies misslingt mir mit Deseralisierung total, also dacht ich hab ich das Konzept mit der Serialisierung falsch verstanden und habs dann mit einem normalen XML Reader versucht, dies klappte mir auch nicht, so hab ich mir ein neues Projekt geschaffen und versuche dort erstmal nur zu prüfen ob ich auf die Datei überhaupt zugreifen kann.

Und hier kommen mir zum Knackpunkt. In meinem jetzigen Testprojekt steht nicht mehr Code wie folgender:


public MainPage()
    {
      InitializeComponent();

      if (IsolatedStorageFile.GetUserStoreForApplication().FileExists("testordner/TextFile1.txt") == true)
      {
        MessageBox.Show("Ichbinda");
        
      }
    }

Natürlich sind die usings vorhanden um auf die IsolatedStorage Klassen zuzugreifen.

Die Datei liegt im root Ordner meiner App / testordner / TextFile1.txt.

So langsam bin ich am verzweifeln, da nämlich die abfrage file exists nicht auf true hinausläuft, also findet er die Datei nicht? Oder versteh ich was komplett Falsch?

Schonmal danke fürs lesen

ScoobyDoh!

:::

I
256 Beiträge seit 2005
vor 13 Jahren

Der IsolatedStorage liegt irgendwo anders. Da musst du die Datei zuerst dort erstellen.
Der hat nichts mit deiner App Root oÄ zu tun.

ScoobyDoh! Themenstarter:in
69 Beiträge seit 2010
vor 13 Jahren

Der IsolatedStorage liegt woanders? o.O?
Sicher.. ich ging immer davon aus das es der aktuelle Projektornder ist.

Ok, also muss ich meine Dateien erstmal dem Isolated Storage hinzufügen, das wär dann die nächste frage: wie geht das?

Hab mir echt den Wolf gesucht, da wäre noch ein Tip net schlecht.

gruß ScoobyDoh!

:::

458 Beiträge seit 2007
vor 13 Jahren

Schau dir mal das an.
Geht zwar um SQLite, aber es ist ein Snippet dabei wie man einen Stream in den IsolatedStorage schreibt.

be the hammer, not the nail!

3.825 Beiträge seit 2006
vor 13 Jahren

Der Isolated Storage ist ein eigener Speicherbereich, den man speichern und wieder laden kann.

Direkt drauf zugreifen, ohne die Isolated Storage Routinen, das geht nicht.

Sonst wäre das Wort "isolated" ohne Sinn.

Schreibe lieber

if (IsolatedStorageFile.GetUserStoreForApplication().FileExists("testordner/TextFile1.txt"))

statt

if (IsolatedStorageFile.GetUserStoreForApplication().FileExists("testordner/TextFile1.txt") == true)

😉

Google findet viele Beispiele für Verwendung des I.S. beim Windows Phone 7, z.B.

http://weblogs.asp.net/gunnarpeipman/archive/2010/05/06/windows-phone-7-development-using-isolated-storage.aspx

http://msdn.microsoft.com/en-us/library/ff402541(v=vs.92).aspx

http://www.microsoft.com/germany/msdn/webcasts/library.aspx?id=1032466128

http://www.codebadger.com/blog/post/2010/09/03/Using-Isolated-Storage-on-Windows-Phone-7.aspx

http://www.soifind.com/windows-phone/Windows-Phone-7-Isolated-Storage.aspx

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3

ScoobyDoh! Themenstarter:in
69 Beiträge seit 2010
vor 13 Jahren

Der Isolated Storage ist ein eigener Speicherbereich, den man speichern und wieder laden kann.

Direkt drauf zugreifen, ohne die Isolated Storage Routinen, das geht nicht.

Sonst wäre das Wort "isolated" ohne Sinn.

Wie war wie war, jedoch muss ich ja jetz die Dateien die ich meinem Projekt zugeordnet habe ja dem Isolated Storage hinzufügen.

Schreibe lieber

if (IsolatedStorageFile.GetUserStoreForApplication().FileExists("testordner/TextFile1.txt"))  

statt

if (IsolatedStorageFile.GetUserStoreForApplication().FileExists("testordner/TextFile1.txt") == true)  

😉

Scherzkeks 😄

Google findet viele Beispiele für Verwendung des I.S. beim Windows Phone 7, z.B.

Danke, ich denke zwar das mein Problem nicht verstanden ist, jedoch schau ich mir die links mal an.
Vielen dank soweit 😉

gruß Shauntre

:::

ScoobyDoh! Themenstarter:in
69 Beiträge seit 2010
vor 13 Jahren

heyhey,

ich hab die Lösung für das Problem gefunden, oder sagen wir ich habe gefunden das wes keine Lösung gibt.

In Silverlight kann man aus dem IsolatedStorage nicht raus. PUNKT!

Die Ordnerstruktur ist folgende:


Applications
 - Data
   - GUID (Eine erstellte Product ID)
     - Data
       - Isolated Storage (und aus dem kommt man nicht raus)

   - Install(hier befindet sich das Projekt)

So, es gibt allerdings eine Möglichkeit das zu umgehen. Ist zwar nicht Elegant, aber es geht.

Und zwar kann über das XNA Framework auf den Projektordner zugreifen, da ja dort es nötig ist Texturen, Meshes, etc... dynamisch nachzuladen.

Nach hinzufügen der Assembly "Microsoft.XNA.Framework" kann man folgenden Code ausführen, der die Datei aus dem Projektordner lädt.


Stream Fs = TitleContainer.OpenStream("testordner/TextFile1.txt");

            if (Fs.CanRead)
            {
                MessageBox.Show("testfile loaded");
            }

Und somit kann man die Dateien laden.

==============================

Bei mir gehen aber jetz die Probleme grad weiter.

Und zwar möcht ich die Information der Datei, bei mir ist das eine XML nun verfügbar machen, also in meinem Fall muss ich die Datei in den Isoalted Storage kopieren.
Hier kommt mein wissen stark an seine Grenzen, denn jetz wrids kompliziert (so nehme ich das an).
Ich hab erstmal versucht die Datei mit "ReadByte" auszulesen und die Information dann in dei datei im isolated Storage zu schreiben,hat mir nicht funktioniert.

Und jetz brauch ich beistand, da ich keine Ahnung hab wie ich das bewerkstelligen sollte 😉

Danke für eure Hilfe und Antworten

gruß ScoobyDoh!

:::