使用tinyxml的一些小窍门,插入时设置text

简介: 使用tinyxml的一些小窍门,插入时设置text

1.当插入element时,如何设置text,主要是要插入TiXmlText,详见下面的代码


int CSELUSR_DLG::InsertScore(CString CourseID,CString SubCourseID,CString PlayerID)
{
TiXmlDocument doc( "GolfScores.xml" );
TiXmlNode* node = 0;
TiXmlElement* todoElement = 0;
TiXmlElement* itemElement = 0;
bool loadOkay = doc.LoadFile();
int i=0;
int max=-1;
//AfxMessageBox(_T("3"));
if ( !loadOkay )
{
AfxMessageBox(_T("open GolfScores.xml file failed"));
}
else
{
// AfxMessageBox(_T("4"));
node = doc.FirstChild( "GolfScores" );
assert( node );
todoElement = node->ToElement();
assert( todoElement  );
itemElement = todoElement->FirstChildElement();
assert( itemElement  );
int nindex=1;
while(itemElement!=NULL)
{
const char * cid=itemElement->GetText();
int nid=atoi(cid);
if(max<nid)max=nid;
delete[] cid;
itemElement=itemElement->NextSiblingElement();
}
char * pCourseID=NULL;
char * pSubCourseID=NULL;
char * pPlayerID=NULL;
MyWideCharToMultiByte(CourseID,&pCourseID);
MyWideCharToMultiByte(SubCourseID,&pSubCourseID);
MyWideCharToMultiByte(PlayerID,&pPlayerID);
max++;
COleDateTime startdt=COleDateTime::GetCurrentTime();
char chstartdt[30];
sprintf(chstartdt,"%04d-%02d-%02d %02d:%02d:%02d",startdt.GetYear(),startdt.GetMonth(),startdt.GetDay(),startdt.GetHour()-1,startdt.GetMinute(),startdt.GetSecond());
TiXmlElement xmlid( "ID" );
xmlid.SetAttribute( "CourseID", pCourseID );
xmlid.SetAttribute( "SubCourseID", pSubCourseID);
xmlid.SetAttribute("PlayerID",pPlayerID);
xmlid.SetAttribute( "ScoreHole1", "" );
xmlid.SetAttribute( "ScoreHole2", "" );
xmlid.SetAttribute( "ScoreHole3", "" );
xmlid.SetAttribute( "ScoreHole4", "" );
xmlid.SetAttribute( "ScoreHole5", "" );
xmlid.SetAttribute( "ScoreHole6", "" );
xmlid.SetAttribute( "ScoreHole7", "" );
xmlid.SetAttribute( "ScoreHole8", "" );
xmlid.SetAttribute( "ScoreHole9", "" );
xmlid.SetAttribute( "ScoreHole10", "" );
xmlid.SetAttribute( "ScoreHole11", "" );
xmlid.SetAttribute( "ScoreHole12", "" );
xmlid.SetAttribute( "ScoreHole13", "" );
xmlid.SetAttribute( "ScoreHole14", "" );
xmlid.SetAttribute( "ScoreHole15", "" );
xmlid.SetAttribute( "ScoreHole16", "" );
xmlid.SetAttribute( "ScoreHole17", "" );
xmlid.SetAttribute( "ScoreHole18", "" );
xmlid.SetAttribute( "RaceStartTime", chstartdt);
xmlid.SetAttribute( "RaceEndTime", "" );
xmlid.SetAttribute( "ScoreStatistics", "" );
xmlid.SetAttribute( "Remarks", "" );
xmlid.SetAttribute( "Finished", "0" );
char chscoreid[25];
sprintf(chscoreid,"%d",max);
//xmlid.SetValue(chscoreid);
TiXmlText xmltext(chscoreid);
xmlid.InsertEndChild(xmltext);
todoElement->InsertEndChild(xmlid);
delete[] pCourseID;
delete[] pSubCourseID;
delete[] pPlayerID;
}
doc.SaveFile("GolfScores.xml");
doc.Clear();
return max;
}
相关文章
|
移动开发 JavaScript 前端开发
|
JavaScript API iOS开发
copy-to-clipboard 源码解析,隐藏的内容比想象的要多
copy-to-clipboard 是一个 js 的剪切板库,可用来复制内容到剪切板,看源码后发现其中隐藏的内容着实不少,今天一起来解读下其源码。
|
IDE 开发工具
在微软Word中插入代码并保持代码样式
版权声明:转载请注明出处:http://blog.csdn.net/dajitui2024 https://blog.csdn.net/dajitui2024/article/details/79396722 打开word文档,插入,对象,新建,OpenDocument文本,这里等待粘入代码。
5384 0
|
JavaScript 前端开发 开发者
sublime text 的小细节设置,让你的代码更优美
这些属性都可以在 首选项>设置-默认 里修改下面也会介绍几个比较常用的几个插件 字体大小: “font_size”: 17 高亮编辑中的一行 “highlight_line”: true 焦点丢失后自动保存 “save_on_focus_lost”: true 显示当...
1650 0