Vergleich des Lesens von XML-Dateien auf verschiedenen Plattformen von Unity PC und Android

Dieser Artikel lädt lokale XML-Dateien

Eins: unter der PC-Plattform

1: Unabhängig davon, ob es sich um einen persistenten Datenpfad oder einen StreamingAssetsPath handelt, können Sie load direkt zum Lesen und Schreiben verwenden

        Beispiel: XmlDocument doc = new XmlDocument (); doc.Load (Pfad);

2: Beachten Sie, dass beim Erstellen eines neuen Ordners zum Speichern von XML-Dateien im Assets-Ordner die XML-Datei in diesem Ordner nach dem Packen beim Packen nicht gelesen werden kann 

Lösung: 1: Legen Sie die XML-Datei direkt unter dem StreamAssets-Ordner ab

                    2: Legen Sie nach dem Packen den gespeicherten XML-Ordner unter Ihrem Ordner **** _ Data ab (stellen Sie sicher, dass der Pfad einheitlich ist, wenn sich Ihr XML-Ordner nicht direkt unter dem Ordner Assets befindet, z. B.: Aeeets / Xml / name .xml, dann erstellen Sie nach dem Packen einen neuen Ordner Xml unter dem Ordner **** _ Data und fügen Sie schließlich name.xml ein.             

3: Verwenden Sie die www-Klasse zum Laden,

     Um www zum Laden von XML-Dateien zu verwenden, müssen Sie "file: //" hinzufügen

     z.B.:  

  IEnumerator IEPCRead(string path)
      {
          WWW www = new WWW("file://" + path);
          //do.......   
      }

 

Zweitens: unter der Android-Plattform

1: Sie können die XML-Datei nicht direkt unter dem Pfad "StreamingAssetsPath" laden. Sie können die XML-Datei unter dem Pfad "persistentDataPata" laden

     z.B.:

  string path1 = Application.streamingAssetsPath + "/stream.xml";
  XmlDocument doc = new XmlDocument();
  doc.Load(path1);   //错误
   string path1 = Application.persistentDataPath + "/stream.xml";
  XmlDocument doc = new XmlDocument();
  doc.Load(path1);// 正确

2: Die XML-Datei unter dem von Ihnen erstellten Ordner kann nicht gelesen werden

         Dies ist das gleiche wie das zweite Element unter der PC-Plattform, aber wir können die apk nach dem Packen nicht bedienen. Erstellen Sie also keinen Ordner, um die XML-Datei unter der Android-Plattform zu speichern.

3: Verwenden Sie www zum Laden

         Verwenden Sie www, um die XML-Datei zu laden, und fügen Sie das Protokoll "jar: file: //" hinzu

  IEnumerator IEAndroidRead(string path)
         {
            WWW www = new WWW("jar:file://" + path);
           //do.......
         }

 

【ändern】

   ps: Als ich es hier versuchte, stellte ich fest, dass StreamingAssetsPath kein "jar: file : //" - Protokoll hinzufügt (es wird Fehler verursachen, wenn es hinzugefügt wird).

 

  Datum: 2017.11.1

  Fügen Sie ein Beispiel hinzu

Drei: Zusammenfassung

     pc: Sie können die XML-Datei direkt in den entsprechenden Pfad laden. Achten Sie jedoch darauf, dass Sie einen Ordner erstellen und ihn nach dem Packen lesen.

          Fügen Sie beim Laden mit www das Protokoll "file: //" hinzu

     android: kann nur die xml-Datei in den persistentDataPata-Pfad laden und sonst nichts,

                         Beim Laden mit www, müssen Sie den hinzufügen „jar: file: //“ Protokoll, aber streamingAssetsPath kann das nicht hinzufügen „: file: // jar“ Protokoll

Ich denke du magst

Origin blog.csdn.net/K20132014/article/details/75224777
Empfohlen
Rangfolge