`
bean5618
  • 浏览: 18203 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

解析.mms文件内容

阅读更多
/**
	 * 解析.mms文件内容 所有文件将解析到%source%+%fileName%文件夹下, <br/>
	 * smil将会重命名为%fileName%.smil
	 * 
	 * @param source
	 *            源文件
	 *            eg:"D:\\apache-tomcat-6.0.26\\webapps\\lvxian_unicom\\UserFiles\\1273719840015"
	 * @param fileName
	 *            解析内容存储文件夹 eg:"1273719840015"
	 * @throws Exception
	 */

	@SuppressWarnings("unchecked")
	public static void readMms(String source, String fileName) throws Exception {
		FileOutputStream Filefo = null;
		try
		{
			File f = new File(source + fileName);
			SAXReader reader = new SAXReader();
			Document doc = reader.read(f);
			Element root = doc.getRootElement();
			Element content = root.element("Content");
			Element foo;

			for (Iterator i = content.elementIterator("PresentationContent"); i.hasNext();)
			{
				foo = (Element) i.next();
				String name = foo.elementText("ContentID");
				String data = foo.elementText("Data");
				if ("application/smil".equals(foo.elementText("ContentType")))
				{
					name = fileName + ".smil";
					File txt = new File(source + name);
					txt.createNewFile();
					Writer writer = new OutputStreamWriter(new FileOutputStream(txt), "UTF-8");
					writer.write(toStringHexTest(data.toUpperCase()));
					writer.close();
				}
			}

			for (Iterator i = content.elementIterator("SubContent"); i.hasNext();)
			{
				foo = (Element) i.next();
				String type = foo.elementText("ContentType");
				String name = foo.elementText("ContentID");
				String data = foo.elementText("Data");
				File txt = new File(source + name);
				txt.createNewFile();
				if ("text/plain".equalsIgnoreCase(type))
				{
					Filefo = new FileOutputStream(txt);
					Filefo.write(data.getBytes("UTF-8"));
				}
				else
				{
					byte[] bb = toByteArr(data);
					Filefo = new FileOutputStream(txt);
					Filefo.write(bb);
				}
			}
			// f.delete();
			// forceDelDir(new File(source));
		}
		catch (Exception e)
		{
			throw new Exception("彩信文件解析失败!文件地址:" + source + fileName + "-->"
					+ e.getMessage());
		}
		finally
		{
			try
			{
				if (Filefo != null)
				{
					Filefo.close();
				}
			}
			catch (IOException e)
			{
				e.printStackTrace();
			}
		}
	}
0
0
分享到:
评论

相关推荐

    智能变电站报文解析工具mms_ethereal,附报文分析,使用方法

    对于智能变电站的MMS报文,Ethereal提供了专门的解码功能,可以解析MMS报文结构,帮助用户理解报文内容,进行故障排查或性能优化。 "SV报文分析.doc"可能包含了关于Sampled Values(采样值)报文的详细分析。SV报文...

    android mms

    - **MessagingStorage**:管理MMS消息的本地存储,包括数据库和文件系统。 **5. MMS编程接口** Android提供了一套API,允许开发者集成MMS功能到自定义应用中。这些API包括`android.telephony.mms`和`android....

    mms.rar_MMS_mms文件

    与传统的SMS(短消息服务)相比,MMS能够承载更丰富的多媒体内容,为用户提供更加生动的信息交流体验。在发送MMS时,首先要将多媒体文件进行编码和打包,然后通过MMS代理服务器转发给接收方。 二、MMS发送过程 1. ...

    MMS与ASN.1编码规则

    本文旨在帮助初学者快速入门MMS及其编码机制,并通过具体的例子来解释如何解析MMS PDU(协议数据单元)。以下内容将详细介绍ASN.1编码规则、MMS协议的基本概念,以及一些常见的MMS服务示例。 #### ASN.1概述 ASN.1...

    mms.rar_MMS

    【MMS 文件详解】 ...总的来说,MMS文件是移动通信中一种重要的多媒体信息载体,它让我们能够方便地分享丰富多彩的内容。然而,与任何其他数字数据一样,管理和保护MMS文件的安全性也是用户必须关注的问题。

    ScdParse.zip_MMS lite _scd 解析_scd解析_scl_parse_智能变电站

    本资料包提供的"ScdParse.zip"包含了一套针对SCD文件的解析代码,同时涉及到了MMS(Manufacturing Message Specification) Lite技术,对于学习和理解智能变电站的自动化控制有极大的帮助。 首先,SCD文件是基于IEC...

    IEC61850 MMS协议解析

    IEC61850 MMS 协议解析 IEC61850 MMS 协议是一种用于电力系统自动化领域的通用标准,旨在实现不同制造设备之间的互操作。MMS(Manufacturing Message Specification)是一种制造报文规范,用于在设备或程序之间传送...

    android 短信源码

    本文将深入解析"android短信源码",主要关注Android系统自带的MMS( Multimedia Messaging Service,多媒体信息服务)应用的实现。在这个名为`platform_packages_apps_mms-master`的压缩包文件中,包含了完整的MMS...

    Mms.rar_MMS_mms.rar_mms发的彩信

    【标签】"mms mms.rar mms发的彩信"进一步强调了这个资源的核心内容,即MMS技术、与之相关的压缩包文件名以及MMS发送彩信的实际应用。 【压缩包子文件的文件名称列表】中,“www.pudn.com.txt”可能是一个包含链接...

    parse-mms-samples.rar_MMS_MMS协议_completelyceq_mms file parse_mms

    5. **解析MMS文件**:详细步骤和方法,展示如何解码和提取MMS文件中的多媒体内容。 6. **案例研究**:可能包含具体的MMS消息实例,分析其结构和内容,以帮助读者更好地理解协议的实际应用。 而“www.pudn.com.txt...

    MMS.zip_mms函数_生成彩信文件

    4. **打包**:将编码后的多媒体数据和构建好的彩信结构打包成一个MMS文件,通常是一个XML文档,包含了所有必要的信息。 5. **发送**:最后,使用适当的API或库,通过网络将生成的彩信文件发送到指定的电话号码。这...

    Android Mms源码

    《Android Mms源码解析与应用》 在Android操作系统中,Mms(Multimedia Messaging Service,多媒体信息服务)是用于发送和接收包含文本、图片、音频、视频等多媒体内容的短信服务。2013年11月份的Android Mms源码,...

    MMS 通讯 协议解析记录

    《MMS通讯协议详解及其在电力行业的应用》 MMS,即Manufacturing Message Specification,是一种在...同时,通过开发Wireshark这样的网络分析工具插件,能够更直观地解析MMS通信过程,进一步优化系统性能和稳定性。

    MMS.zip_MMS android_android mms_site:www.pudn.com_短信 android

    通过对这些源码的学习,开发者可以深入理解MMS的实现细节,包括如何创建和解析MMS消息、如何与服务器交互以及如何在UI上展示MMS内容。 7. **Pudn.com**:提及的"Pudn.com"是一个分享技术文档和源码的网站,可能在这...

    MMS_sender1.zip_Application send MMS_MMS_send mms with java

    2. **FReader.java**:此文件可能是用来读取或解析MMS数据的类,例如读取接收到的MMS消息内容,或者从本地存储中读取用户要发送的多媒体文件。 3. **MMS.java**:这是核心的MMS服务类,可能包含了处理MMS消息的逻辑...

    mms.zip_MMS

    开发者可能需要对LWIP进行定制,添加或修改必要的模块来支持MMS的特定需求,如MMS头信息的解析、多媒体数据的编码和解码等。 **MMS协议的工作原理** MMS协议通常涉及多个步骤: 1. **创建消息**:用户在设备上创建...

    mms.rar_MMS_MMS c++

    1. **消息解析模块**:C++可以高效地处理MIME格式,解析MMS头部和消息体,提取出关键信息。 2. **网络通信模块**:C++支持多种网络库,如libcurl、Poco等,用于建立和维护与移动设备的连接,收发MMS数据。 3. **媒体...

    MMS.rar_MMS_mms symbian_symbian_symbian MMs

    开发者需要理解这些规则以正确构建和解析MMS消息。 4. **数据库管理**:MMS消息通常需要存储在本地数据库中,以便用户查看和管理。Symbian提供了RDBMS(关系型数据库管理系统)支持,如Series 60平台上的MMS数据库...

    libmms 的 .dll 和 .lib 和 .h 文件

    6. **uri.h**: URI(Uniform Resource Identifier)是互联网上的资源标识符,这个文件可能包含解析和处理MMS流地址的函数。 7. **bswap.h**: 二进制字节交换的头文件,可能包含了用于处理不同字节序的工具函数,...

    MMS.rar_MMS

    它还负责与WAP Gateway进行通信,解析和构建MMS消息。 2. **MMS协议实现**:源码中可能包含了对MMS协议的具体实现,包括HTTP和WAP-XPUSH协议的封装,用于传输MMS数据。 3. **多媒体处理**:为了支持不同类型的媒体...

Global site tag (gtag.js) - Google Analytics