将html解码(例如>和<)转换为普通可读文本(例如>和<)

时间:2018-10-15 13:58:15

标签: c# php xml unity3d

我有来自 SQL数据库的数据,其中包含 xml文本,并且正在使用 php脚本 回显

例如:
No:1 | TestName:MachineAlfonso | TestParameter: | TestConnection:1234;

此数据稍后将解析为 Unity 供以后使用。
但是,当我尝试统一打印时, 它以某种方式将 << / strong>转换为&lt; ,将> 转换为&gt;

完整的输出变为
编号:1 | TestName:MachineAlfonso | TestParameter:&lt; asdf /&gt; | TestConnection:1234;

是否有任何功能可以将输出打印成易于阅读的符号,而不是html代码? 因为这两个符号(<和>)只是我要转换的许多其他HTML简单符号中的一些。

这是我用来打印回显数据的C#脚本

   public IEnumerator RefreshData()
   {
        //load the data
        //dataLoader is the link of the echoed php data
        WWW InventoryDatabase = new WWW(dataLoaderURL);

        //wait until its done dowloading
        yield return InventoryDatabase;

        string abc = InventoryDatabase.text;
        Debug.Log("text is: " + abc);
   }

2 个答案:

答案 0 :(得分:0)

尝试使用PHP的htmlentities()函数。它是专门为此目的而设计的:

查看更多:http://php.net/manual/en/function.htmlentities.php

答案 1 :(得分:0)

最后,为了不浪费时间,我只使用了 replace ,就像@derHugo建议的那样。
希望有更好,更清洁的方法来做到这一点。 但是,嘿,这是一个开始。 ^ _ ^

如果有人遇到类似的问题,这里是代码段:

     public IEnumerator RefreshData()
       {
            //load the data
            //dataLoader is the link of the echoed php data
            WWW InventoryDatabase = new WWW(dataLoaderURL);

            //wait until its done dowloading
            yield return InventoryDatabase;

             string temp = InventoryDatabase.text;
                    temp = temp.Replace("&lt;", "asdf");
                    temp = temp.Replace("&gt;", "<");
                    temp = temp.Replace("&amp;", "&");
                    temp = temp.Replace("&quot;", "\"");

            //this "Inventory" contains all the data from the echoed file
            string Inventory =  temp;

            string abc = InventoryDatabase.text;
            Debug.Log("text is: " + Inventory);
       }