精华内容
下载资源
问答
  • 这是那份XML文件 <name>rwr <size>2322 <singer>rwdd <name>utg <size>865 <singer>mfd 还有些错误提示和警告也不知道怎么处理 03-17 10:24:37.946: E/InputDispatcher(70)...
  • 前言 一般在电脑上面加载xml文件,我们都会使用XmlDocument.Load(Path)。在pc上面测试的时候是没有问题的,xml文件可以成功...原来,在安卓环境下不支持XmlDocument.Load(Path)。我们要使用WWW来加载xml文件。 创建x...

    前言

    一般在电脑上面加载xml文件,我们都会使用XmlDocument.Load(Path)。在pc上面测试的时候是没有问题的,xml文件可以成功加载。但是当我们打包成apk文件,并在手机上面安装并游玩的时候,发现出现问题了,xml文件好像没有加载出来,因为游戏中的对话全部没法正常执行。原来,在安卓环境下不支持XmlDocument.Load(Path)。我们要使用WWW来加载xml文件。

    创建xml

    我的xml文件:

    <?xml version="1.0" encoding="utf-8"?>
    <item>
        <speakData>
          <name>我:</name>
          <speak>哎呀!吓我一跳,我只是碰巧路过此地而已,你后面那扇门看起来挺诱人的,嘿嘿</speak>
        </speakData>
        <speakData>
          <name>巨大雕像:</name>
          <speak>碰巧路过?你以为人名警察会信你的鬼话么</speak>
        </speakData>
        <speakData>
          <name>我:</name>
          <speak>啊?人民警察?完蛋了,万一告我私闯名宅</speak>
        </speakData>
        <speakData>
          <name>巨大雕像:</name>
          <speak>不管我是谁,你今天死定了,任何人都不允许通过那扇门,主人是这么说的</speak>
        </speakData>
    </item>
    

    将xml文件放在Assets文件夹下面的streamingAssets文件夹里面

    加载xml文件

    利用Application.platform == RuntimePlatform.Android判断是否处于安卓环境,因为Pc端和安卓端的路径写法是不一样的

    if (Application.platform == RuntimePlatform.Android)
            {
                //安卓端写法
                filePath = Application.streamingAssetsPath + "/SpeakData/EnemySpeak.xml";
            }
            else
            {
                //PC端写法
           filePath="file://"+Application.streamingAssetsPath+"/SpeakData/EnemySpeak.xml";
            }
    

    然后使用WWW加载路径:

     WWW www = new WWW(filePath);
    

    利用 if(www.isDone)判断是否加载成功,加载成功后就可以获取xml的数据了,下面是完整代码:

    private IEnumerator LoadXmlData()
        {
            string filePath;
            if (Application.platform == RuntimePlatform.Android)
            {
                filePath = Application.streamingAssetsPath + "/SpeakData/EnemySpeak.xml";
            }
            else
            {
               filePath="file://"+Application.streamingAssetsPath+"/SpeakData/EnemySpeak.xml";
            }
            WWW www = new WWW(filePath);
            yield return www;
            if(www.isDone)
            {
                XmlDocument xDo = new XmlDocument();
                xDo.LoadXml(www.text);
                //xDo.Load(filePath);
                //获取item节点里面的数据
                XmlNodeList xnl = xDo.SelectSingleNode("item").ChildNodes;
                foreach (XmlElement e in xnl)//遍历子节点数据
                {
                    sdata = new StringBuilder();
                    foreach (XmlElement e2 in e.ChildNodes)//遍历子节点的子节点数据
                    {
                        //判断是哪个节点
                        if (e2.Name.Equals("name"))
                        {
                            sdata.Append(e2.InnerText + "\n");//获取节点内容
                        }
                        else if (e2.Name.Equals("speak"))
                        {
                            sdata.Append(e2.InnerText);//获取节点内容
                        }
                    }
                    speakList.Add(sdata.ToString());//将每次遍历完的数据添加到List<string>
                }
            }
            yield return null;
    }
    

    疑问

    使用WWW加载xml文件需要用到协程,我也不知道为什么,如果不使用协程就没法正常加载。到底是什么原理呢?

    展开全文
  • 安卓webview上传文件的具体实现这里就不多说了,但是在实现这个功能的时候却发现在安卓5.0系统上上传中文名的文件就会莫名乱码,在高版本却不会,百思不得其解。 Uri.parse( "content://...

    安卓webview上传文件的具体实现这里就不多说了,但是在实现这个功能的时候却发现在安卓5.0系统上上传中文名的文件就会莫名乱码,在高版本却不会,百思不得其解。
    在这里插入图片描述

     Uri.parse(
    "content://com.android.externalstorage.documents/document/"
     + label0 //获取到的U盘名称
     + Uri.encode(new StringBuilder().append(":").append(文件路径.substring(文件路径.indexOf("udisk0") + 7)).toString()));
    

    将需要上传的路径经过这样处理后就可以了。
    获取U盘路径 https://blog.csdn.net/qq_33826580/article/details/80226583

    展开全文
  • 编辑 activity_main.layout文件时报错,如图: xml declaration should precede all document content 解决方案:第一行代码必须在第一行!!!就算前面是空的也不行!!! 2020.10.10 0:43
    • 编辑 activity_main.layout文件时报错,如图:

    xml declaration should precede all document content

    在这里插入图片描述
    解决方案:第一行代码必须在第一行!!!就算前面是空的也不行!!!
    在这里插入图片描述
    2020.10.10 0:43

    展开全文
  • public static XmlDocument LoadXML(string _xmllodepath)//PC { XmlDocument doc = new XmlDocument(); doc.Load(Application.streamingAssetsPath + _xmllodepath); return doc; } /// &lt;summ...

    搜集整理
    public static XmlDocument LoadXML(string _xmllodepath)//PC

    {
        XmlDocument doc = new XmlDocument();
        doc.Load(Application.streamingAssetsPath + _xmllodepath);
        return doc;
    }
    
    /// <summary>
    /// 加载XML数据
    /// </summary>
    /// <param name="xmlName"></param>
    /// <returns></returns>
    public static XmlDocument LoadXML(string xmlName)//安卓
    {
        XmlDocument doc = new XmlDocument();
     
        TextAsset textAsset = Resources.Load(xmlName) as TextAsset;
        XmlReader xmlReader = XmlReader.Create(new System.IO.StringReader(textAsset.text));
     
       // doc.Load(_xmllodepath);
       Debug.Log(textAsset);
        doc.Load(xmlReader);
        return doc;
    
    }
    
    /// <summary>
    /// 解析XML数据
    
    /// </summary>
    
    public void ReadXml()
    {
     
    
        XmlDocument xmlDoc = LoadXML( "Data");
    
        XmlNode xmlNodes = xmlDoc.SelectSingleNode("Nodes");
        foreach (XmlNode node in xmlNodes)
        {
            XmlElement mNode = (XmlElement)node;
          
            XmlPos.Add(mNode.GetAttribute("id"), mNode.GetAttribute("pos"));
            XmlName.Add(mNode.GetAttribute("id"), mNode.GetAttribute("name"));
        }
    
    }
    
    展开全文
  •  unity3d中,將xml文件放入StreamingAssets文件夾下,在生成apk后,在Android中會生成一个包.jar,如果在Android中读取,就要对包进行解压,这样跟麻烦,下面有一种更好的方法,就是將xml文件放入Resources文件夾下...
  • DOM ——Document Object Model(文档对象模型) ——提供一套用于解析XML文档的API ——按照XML定义的标记块来创建对象实例并设置相应的属性 ——可以按照标记块的层次结构来创建对象的层次结构 DOM解析相关...
  • private static Element createChildNode(Element sourceElement , Document document){ //当前元素下的所有属性 NamedNodeMap sourceNNM= sourceElement.getAttributes(); System.out.pri...
  • function ImageFileResize(file, maxWidth, maxHeight, callback) { var Img = new Image; var canvas = document.createElement('canvas'); var ctx = ...
  • 微信公众号,点击按钮打开pdf文件流,安卓跳转到浏览器里下载,ios可预览但默认不能下载 注:在pc上开始时采用这两种方式是没有效果的,或者打开的是空页面,但上线到公众号是没有问题的!!!!!!!!! 方法一...
  • 安卓开发中经常要对xml数据进行处理,这里提供一种安卓处理xml文件的方式。 首先引入dom4j.jar包到libs目录下 String Text; 将xml文件读到Text里 Document document = DocumentHelper.parseText(text); ...
  • vue 适配安卓返回键

    2020-05-06 10:34:45
    在主目录新建一个js文件 叫homeback.js const homeback = document.addEventListener('plusready', function() { var webview = plus.webview.currentWebview(); plus.key.addEventListener('backbutton', ...
  • HTML5页面在安卓手机端分页显示数据

    千次阅读 2015-06-25 15:43:31
    最近项目中要跟安卓那边搞接口...首先引入已经封装好的js文件(ajaxRequest.js)。  function autoLoadMessage(){  var messagePn = document.getElementById("messagePN").value!=""?do...
  • 安卓通过itext创建包含中文的pdf出错

    千次阅读 2016-10-27 19:12:24
    一开始我下载的普通的Itext的jar包,版本是itext-5.5.2.zip。...Document document = new Document(); File mydir = new File(Environment.getExternalStorageDirectory() + "/kutitiku/"); if (!mydir.exi
  • 在js文件中加入以下代码 window.addEventListener("resize", function () { // 得到屏幕尺寸 (内部/外部宽度,内部/外部高度) iheight = document.documentElement.clientHeight; //alert(iheight); if...
  • 把网页文件放在main文件夹下assets里面 web部分代码: 调用Android组件测试  function show(info){  document.getElementById("shows").innerHTML = info;  } 测试 启动hello ...
  • 1.DOM(Document Object Model)解析XML文件对象模型,定义了访问和操作xml文档元素的方法和接口。工作原理: DOM是基于树形结构的的节点的文档驱动方法。使用DOM对XML文件进行操作时,首先解析器读入整个XML文档到...
  • 区分ios和安卓 苹果/ios/ ios 系统 无法下载 会直接打开pdf excl doc docx 等文件 不做处理 也处理不了 也就一句话 window.open(url, “_blank”); 或者是 const a = document.createElement(“a”); a.href = url;...
  • XML解析分三种方式使用DOM解析XML数据基础知识 (1)Node,每一对<></>都代表一个节点; (2)NodeList,拥有多个Node的Node;...(4)Document,代表整个xml文件,是一个文档节点例如,解析这个xml文件 <book>
  • 首先将下面三个链接和代码复制并发送到微信的任意好友聊天框中,文件传输那个也行。 debugmm.qq.com/?forcex5=true http://debugtbs.qq.com http://debugx5.qq.com document.getElementById('Bvideo')....
  • 一个运行于 安卓系统的 小型web服务器,包括php/mysql 配置文件可以修改,另外可以用phpmyadmin 管理数据库。 让你的手机立刻变身小型服务器。 =============================== Turn your Android devices into a ...
  • 1.我的webview,设置了很多 WebSettings webSettings = allWebview....var form = new FormData(document.getElementById("patternForm")); form.append("userId",userId); alert(form.get("userId"));
  • js下载文件

    千次阅读 2018-06-30 16:52:20
    移动端 js 下载文件 直接 window.location.href = 路径 可以触发下载 但是存在安卓原生或其他设备自带浏览器不会 触发下载 所以采用下面的代码处理方式 var myFrame= document.createElement('iframe'); ...
  • 一、开发工具: 1、android studio 作用: 1)、运行android和web等平台应用 2)、修改inAppBrowser插件,自定义导航栏视图 ...编辑www文件夹下的前端代码html和js文件等,编写跨平台前端...document.addEventLi...
  • document.getElementById('headerimg').src = sourceLink; $.get('/member/update-headerimg',{headimgurl:sourceLink},function(data){ // $.toast(typeof data); if (data.success =&...
  • 移动端 js 下载文件

    万次阅读 2017-12-20 18:48:51
    移动端 js 下载文件 直接 window.location.href = ‘url’可以触发下载 但是 在 有些 安卓 原生自带浏览器中 不好用 这样 就可以解决 var myFrame= document.createElement(“iframe”); myFrame.src = ...
  • iOS导入应用外文件

    2020-10-15 15:19:25
    之前需求提出想要像安卓一样从手机的文件夹获取文档 安卓那种肯定做不到,只能用像QQ、微信之类的外部app传入文档。...需要在info.plist文件中,添加一个新的属性Document type,用source code方式.
  • 今天实现了一个文件下载功能,在网上找了下资料发现有些问题。 我用的是小米1s,安卓 4.1.2,cordova3.5,打包测试运行正常 首先在控制层launch方法中加入以下代码: 1 // 等待加载PhoneGap 2 document....
  • 在做微信h5开发的时候,安卓端是没有办法清除缓存的,我们可以通过动态引入js/css文件来解决缓存问题。 <script type="text/javascript"> document.write('<script type="text/javascript" charset="UTF-8...
  • 首先根据目录文件夹整体看一下结构,版本4.2 Binaries 里面是一些配置文件和第三方的配置文件,全部是xml,从这可以看到虚幻4都用了什么第三方工具,有各个平台的图形库,还有声音库,物理库(PhysX3),VR...Document...

空空如也

空空如也

1 2 3
收藏数 51
精华内容 20
关键字:

安卓document文件