易截截图软件、单文件、免安装、纯绿色、仅160KB

XML保存的问题 - VC/MFC / 网络编程

打开一个原有的XML文件<?xml version="1.0" encoding="UTF-8" standalone="no" ?>,文件使用UTF-8格式保存,用二进制方式打开文件头的标识为EF BB BF,但是保存后文件头的标识没有了,也就是文件不再是UTF-8格式的了,并且文件的大小变小了。有时候在文件的末尾会出现部分的重复,这样XML文件的格式就不正确了。
部分代码如下

MSXML2::IXMLDOMDocument2Ptr m_doc;
m_doc.CreateInstance( __uuidof(MSXML2::DOMDocument40)
m_doc->load(m_strSvgFileName.AllocSysString());
m_doc->save(m_strSvgFileName.AllocSysString());

用开源库 如 tinyxml

也可以试着拥有 CMarkup 类库 看看 比较快实现你要的

CMarkup类。。。

微软的COM组件不行吗

看来只能用开源库了

我有一种办法:
你不要使用save(filename)方法,
你先getxml,获取xml的内容,这个内容里面是没有你说的EF BB BF这三个字符的,你写文件的时候先写入这三个字符,然后createfile,writefile(eebbbf),writefile(xml内容),这样就可以了。
我一直都是这样处理的。包括读文件也是使用readfile(3,filesize-3)来获取xml内容,然后再使用msxml2来处理这个xml内容。

建议使用tinyxml,比较简单方便...MS的不清楚,反正能用open source的,我就尽量用open source的,出问题也能自己修复.


相关问答:

如何用ASP读取 XML - Web 开发 / ASP

<?xml version="1.0"?>
<root>
<status>433</status>
<msg>这个是汉字</msg>
<serialno>123</serialno>
</root>
如何用ASP读取 status值 ......

java xml文题 - Java / Java SE

<?xml version="1.0" encoding="utf-8" ?> 
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical&q ......

vb读取用word转换成的xml里的数据 - VB / 基础类

Private Sub Command1_Click()
Dim MyString() As String
Open "a.xml" For Binary As #1 ' 打开刚创建的文件。
ReDim MyString(LOF(1) - 1)
  Put #1, , MyRecord ' 读入所有字符到变量中 ......

SQL server分解XML - MS-SQL Server / 应用实例

下面是XML初始文件内容
XML code:
<upd:Update xmlns:lar="http://schemas.microsoft.com/msus/2002/12/LogicalApplicabilityRules" xmlns:cmd="http://schemas.microsoft.com/msus/2002/12/Up ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号