Comparación de la lectura de archivos xml en diferentes plataformas de unity PC y android

Este artículo carga archivos xml locales

Uno: debajo de la plataforma de la PC

1: ya sea una ruta de datos persistente o una ruta de activos de transmisión, puede usar directamente la carga para obtener acceso de lectura y escritura

        por ejemplo: XmlDocument doc = new XmlDocument (); doc.Load (ruta);

2: Una cosa a tener en cuenta es que si crea una nueva carpeta para almacenar archivos xml en la carpeta de activos usted mismo, entonces el xml en esta carpeta no se puede leer después del empaquetado durante el empaquetado. 

Solución: 1: coloque el archivo xml directamente en la carpeta StreamAssets

                    2: Después del empaque, coloque la carpeta xml almacenada debajo de su carpeta **** _ Data (asegúrese de que la ruta sea uniforme, si su carpeta xml no está directamente debajo de la carpeta Activos, por ejemplo: Aeeets / Xml / name .xml, luego, después del empaquetado, cree una nueva carpeta Xml en la carpeta **** _ Data, y finalmente coloque name.xml en ella)             

3: use la clase www para cargar,

     Para usar www para cargar archivos xml, debe agregar "file: //

     p.ej.:  

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

 

Dos: bajo la plataforma Android

1: No puede cargar directamente el xml en la ruta streamingAssetsPath , puede cargar el xml en la ruta persistentDataPata

     p.ej.:

  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: No se puede leer el xml en la carpeta creada por usted mismo

         Esto es lo mismo que el segundo elemento en la plataforma de la PC, pero no podemos operar el apk después del empaquetado, así que no cree una carpeta para almacenar el archivo xml en la plataforma Android.

3: usa www para cargar

         Utilice www para cargar el archivo xml, agregue "jar: file: // protocol

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

 

【modificar】

   ps: Cuando probé aquí, encontré que streamingAssetsPath no agrega el protocolo "jar: file : //" (causará errores si se agrega)

 

  fecha: 2017.11.1

  Agrega un ejemplo

Tres: Resumen

     pc: Puede cargar directamente el archivo xml en la ruta correspondiente, pero debe prestar atención al error cuando crea la carpeta y la lee después del empaque

          Agregue el protocolo "file: //" al cargar con www

     Android: solo puede cargar el archivo xml en la ruta persistentDataPata, nada más,

                         Al cargar con www, debe agregar el protocolo "jar: file: //", pero streamingAssetsPath no puede agregar el protocolo "jar: file: //"

Supongo que te gusta

Origin blog.csdn.net/K20132014/article/details/75224777
Recomendado
Clasificación