PHP生成的XML以FLASH获取为乱码解决方法
PHP生成的XML,以FLASH获取却为乱码经过探索最终解决。记录之,顺便也记录了通用解决方案。如果你也遇到XML<->FLASH乱码情况,可以速查:
1.确信XML绝对没有问题的情况:
首先,flash读取xml出现乱码涉及到System.useCodepage这个静态属性属性 官方描述:“A Boolean value that tells Flash Player which code page to use to interpret external text files.”默认为false。 倘若我们使用UTF8编码的外部文本文件,都不用管它,使用非UTF8编码文本文件且文本中出现中文字符的话,则需要设置其为true方能让flash读出字符不乱码。 AS3中可先import flash.system.System;然后设置System.useCodePage=true;
2.希望PHP生成UTF-8编码的XML:
要想在XML中存在中文字符,最好使用UTF-8编码。在使用DOM创建XML前声明为$dom_XML = new DomDocument(’1.0′,’UTF-8′);第二个参数对应XML文档声明部分的encoding值。但是注意:这仅仅是声明的编码,最后使用$dom_XML->saveXML();实际生成的xml文件却是和PHP脚本源文件编码格式相同,即“你的PHP是什么编码,生成的文件即什么编码。”(见http://www.phpchina.com/bbs/viewthread.php?tid=11450)
3.XML文件声明编码为UTF-8 ,flash中无论useCodepage设为何值读取都还是乱码
经常会遇到这种情况,通常是因为:虽然声明部分是UTF-8,但文件本身却不是UTF-8的(我自己就是ANSI编码的,汗)。 那将会导致一个严重的问题:Firefox浏览器可以正常解释XML,但IE(包括TT等IE内核浏览器)却提示存在错误的字符,Flash也显示乱码! 这种情况处理方法有二:
把XML声明部分改成非UTF-8的,比如GB2312,然后设置FLASH的useCodepage=true;
把XML用记事本打开,使用“另存为”命令保存为UTF-8的即可
也就是让编码声明与文件本身编码匹配,不能名不符实。
分享到:
相关推荐
标题中的“PHP 生成的XML以FLASH获取为乱码终极解决”指的是在PHP中生成XML文件,然后由Adobe Flash读取时出现乱码的问题。这个问题的解决涉及到编码格式的匹配和Flash Player的设置。 首先,当Flash Player读取XML...
在探讨“Flex读取XML乱码的解决方法”这一主题时,我们首先需要理解几个关键概念:Flex框架、XML文件以及编码问题。Flex是一种用于构建跨平台桌面应用程序和移动应用程序的强大框架,它由Adobe Systems开发并开源。...
C# 生成 XML 文件,编码为 UTF-8 方法 C# 生成 XML 文件,编码为 UTF-8 方法是指在 C# 编程语言中,使用特定的方法和类来生成 XML 文件,并将其编码为 UTF-8 编码格式的过程。这种方法常用于数据交换、配置文件、...
在测试xml这个文件中,我们可以用上述方法进行处理,以确保中文字符能正确显示。具体步骤可能包括使用编程语言提供的XML处理库,设置正确的编码,然后读取、解析XML文件,验证中文元素是否正确显示。如果一切正常,...
### PHP从数据库中读取数据生成XML的知识点详解 #### 一、PHP连接MySQL数据库 在给定的脚本中,我们首先看到的是通过PHP连接MySQL数据库的操作。这部分代码使用了较旧的`mysql_`扩展,而不是推荐的`mysqli_`或`PDO...
### Flash乱码问题及其解决方案 #### 一、问题概述 在使用Linux系统并采用Firefox浏览器访问含有Flash内容的网页时,用户可能会遇到中文字符显示不正常的问题。具体表现为中文字符被替换为一系列的小方框或者乱码...
本文将深入探讨如何在C#中通过循环生成XML文档,这一过程对于批量处理数据或动态生成配置文件等场景尤为关键。 ### 核心知识点:C#中循环生成XML文档 #### 1. 初始化XML文档 在C#中,生成XML文档的第一步是创建一...
以下是PHP中生成XML文件的四种方法: 1. **DOMDocument 和 DOMElement** - `DOMDocument` 是PHP中处理XML文档的核心类,可以用于创建、修改和查询XML文档。 - `DOMElement` 类则用于创建XML元素。首先,你需要...
然而,在实际开发过程中,我们可能会遇到一些问题,比如在处理`hbm.xml`文件中的中文注释时出现乱码,或者希望自动生成的实体类中包含有详细的注释。本文将详细介绍如何利用`Hibernate-tools`来解决这些问题,以`...
MySQL数据库自动生成XML文件是一项实用的技术,它可以帮助开发者快速地将数据库中的数据转换为XML格式,便于数据交换、存储或进一步处理。这项技术通常结合代码生成工具,如MyBatis的Generator,能够自动化生成DAO...
一个小程序,用php动态生成xml文件,读者可以在次基础上扩展,如从DB中读出数据循环生成相应节点等等。
本文将深入探讨如何利用XML动态生成Flash,以实现更加灵活和可扩展的内容展示。 首先,XML是一种标记语言,它允许我们以结构化的方式存储和传输数据。它的主要优点是数据与显示分离,这意味着我们可以独立地修改...
确保获取的数据与XML模板的结构匹配,是生成正确XML文件的关键。 2. **数据映射**:将数据库中获取的数据映射到XML模板的各个部分。这可能需要对数据进行转换,例如将数据库字段转换为XML元素或属性。映射规则可以...
通过深入理解`ProcessDiagramCanvas`类的源码,我们可以定位到问题所在,并针对性地修改或配置,以解决PNG乱码的问题。同时,查阅Activiti的官方文档和社区资源,例如博客文章(如给定的链接),可以帮助我们找到更...
在本示例中,我们使用 XmlDocument 对象来读取 XML 文件,并使用 GetElementsByTagName 方法来获取指定元素的集合。然后,我们可以使用 XmlNode 对象来获取元素的值。 对于更新 XML 文件,我们可以使用 XmlDocument...
这种方法对于需要将数据库中的数据转换为XML格式,以便于数据交换、报告生成或者接口通信的情况非常有用。XML(eXtensible Markup Language)是一种标记语言,它允许数据以结构化的方式存储和传输。 在描述中提到,...
### Dom4J生成XML的完整方法详解 在Java开发领域,处理XML文档是常见的需求之一。Dom4J作为一款优秀的Java XML API,以其简洁、高效的特点,在生成、解析和操作XML文档方面表现突出。本文将深入探讨如何使用Dom4J库...
示例代码中使用`l_xml_size = l_ostream->get_num_written_raw()`获取了输出流中已写入的原始数据大小,并通过调用`cl_gui_frontend_services=>gui_download`方法将XML数据下载到客户端指定的路径。 ### 总结 以上...
在Java编程中,生成XML文件并发送报文是一项常见的任务,尤其在系统间的数据交换、API调用或者网络通信中。XML(eXtensible Markup Language)是一种结构化数据表示语言,具有良好的可读性和可扩展性,是数据传输的...