使用MsXML读写XML文件
// MsXmlTest.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "MsXmlTest.h"
#include <clocale>
#include "comutil.h"
#import "msxml4.dll"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// 唯一的应用程序对象
CWinApp theApp;
using namespace std;
void WritePerson(MSXML2::IXMLDOMDocument2Ptr pDocument, MSXML2::IXMLDOMNodePtr pParentNode, CString name, long age)
{
//创建一个<Person>节点
MSXML2::IXMLDOMElementPtr pPersonNode = pDocument->createElement(_T("person"));
pParentNode->appendChild(pPersonNode);
//写入name
MSXML2::IXMLDOMElementPtr pPersonNameNode = pDocument->createElement(_T("name"));
pPersonNameNode->text = _bstr_t(name);
//写入age
MSXML2::IXMLDOMElementPtr pPersonAgeNode = pDocument->createElement(_T("age"));
pPersonAgeNode->text = _bstr_t(age);
pPersonNode->appendChild(pPersonNameNode);
pParentNode->appendChild(pPersonAgeNode);
}
void WritePersons()
{
MSXML2::IXMLDOMDocument2Ptr pXMLDocument;
pXMLDocument.CreateInstance(__uuidof(MSXML2::DOMDocument));
MSXML2::IXMLDOMElementPtr pPersonsNode = pXMLDocument->createElement(_T("persons"));
pXMLDocument->appendChild(pPersonsNode);
WritePerson(pXMLDocument, pPersonsNode, _T("chain"), 25);
WritePerson(pXMLDocument, pPersonsNode, _T("who"), 0);
pXMLDocument->save(_T("persons.xml"));
}
void ReadPersons()
{
MSXML2::IXMLDOMDocument2Ptr pXMLDocument;
pXMLDocument.CreateInstance(__uuidof(MSXML2::DOMDocument));
pXMLDocument->load(_T("persons.xml"));
MSXML2::IXMLDOMElementPtr pRootNode = pXMLDocument->documentElement;
//查找<person>节点.
MSXML2::IXMLDOMNodeListPtr pPersonNodes = pRootNode->selectNodes(_T("person"));
CString s;
long size = pPersonNodes->length;
for (int i = 0; i<size; i++)
{
MSXML2::IXMLDOMNodePtr pPersonNode = pPersonNodes->item[i];
MSXML2::IXMLDOMNodePtr pNameNode = pPersonNode->selectSingleNode(_T("name"));
MSXML2::IXMLDOMNodePtr pAgeNode
相关文档:
<html>
<head>
<title>XML Demo</title>
</head>
<body>
<script language="javascript">
function window.onload()
{
var domXML=new ActiveXObject("Microsoft.xmldom");
domXML.load("aTest.xml");
var myRoot=domXML.documentElement;
var myNodes2=myRoot.child ......
首先要有一个简易的服务器,建立一个站点,然后站点下存放
1:crossdomain.xml 这个是跨与域策略文件,用于指定域通过Flash
Player访问本域的资源(如果服务器在本机就没有这个必要)但是远程的话就要(建议要)
文件内容:
<cross-domain-policy>
<allow-access-from domain="*" /> ......
方法一:
采取通用的base64编码方式,取时解码存时加码。
毛老师提供了完整的编码代码,且效率很高。
unit Base64;
interface
uses SysUtils, Classes;
type
{$IFDEF UNICODE}
Base64String = AnsiString;
{$ELSE}
Base64String = strin ......
请看下面的示例:
<person sex="female">
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
<person>
<sex>female</sex>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person> ......