信息发布软件,b2b软件,广告发布软件

 找回密码
 立即注册
搜索
查看: 10215|回复: 20
打印 上一主题 下一主题

[『C++图文教程』] C++ XML约会时间到直观解析TinyXML篇多实例申明

[复制链接]

1868

主题

1878

帖子

1万

积分

积分
10928
跳转到指定楼层
宣传软件楼主
发表于 2017-6-23 23:25:58 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

软件教程首图:

软件教程分类:C++ 图文教程 

软件图文教程视频教程分类:软件图文教程 

软件教程难易程度:软件中级教程 

软件教程发布日期:2017-06-23

软件教程关键字:C++ XML约会时间到直观解析TinyXML篇多实例申明

① 本信息收集于网络,如有不对的地方欢迎联系我纠正!
② 本信息免费收录,不存在价格的问题!
③ 如果您的网站也想这样出现在这里,请您加好友情链接,我当天会审核通过!

④友情链接关键字:软件定制网站 网址:http://www.postbbs.com

软件教程详细描述

读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好。

TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows或Linux中编译。这个解析库的模型通过解析XML文件,然后在内存中生成DOM模型,从而让我们很方便的遍历这棵XML树。

DOM模型即文档对象模型,是将整个文档分成多个元素(如书、章、节、段等),并利用树型结构表示这些元素之间的顺序关系以及嵌套包含关系。

如下是一个XML片段:
file:///C:/Users/MHAPDR~1/AppData/Local/Temp/enhtmlclip/Image.gif   <Persons>
        
<Person ID="1">
            
<name>周星星</name>
            
<age>20</age>
        
</Person>
        
<Person ID="2">
            
<name>白晶晶</name>
            
<age>18</age>
        
</Person>
   
</Persons>

在TinyXML中,根据XML的各种元素来定义了一些类:

TiXmlBase:整个TinyXML模型的基类。

TiXmlAttribute:对应于XML中的元素的属性。

TiXmlNode:对应于DOM结构中的节点。

TiXmlComment:对应于XML中的注释

TiXmlDeclaration:对应于XML中的申明部分,即<?versiong="1.0" ?>。

TiXmlDocument:对应于XML的整个文档。

TiXmlElement:对应于XML的元素。

TiXmlText:对应于XML的文字部分

TiXmlUnknown:对应于XML的未知部分。

TiXmlHandler:定义了针对XML的一些操作。

TinyXML是个解析库,主要由DOM模型类(TiXmlBase、TiXmlNode、TiXmlAttribute、TiXmlComment、TiXmlDeclaration、TiXmlElement、TiXmlText、TiXmlUnknown)和操作类(TiXmlHandler)构成。它由两个头文件(.h文件)和四个CPP文件(.cpp文件)构成,用的时候,只要将(tinyxml.h、tinystr.h、tinystr.cpp、tinyxml.cpp、tinyxmlerror.cpp、tinyxmlparser.cpp)导入工程就可以用它的东西了。如果需要,可以将它做成自己的DLL来调用。举个例子就可以说明一切。。。

对应的XML文件:
<Persons>
   
<Person ID="1">
        
<name>phinecos</name>
        
<age>22</age>
   
</Person>
</Persons>

读写XML文件的程序代码:

#include <iostream>
#include
"tinyxml.h"
#include
"tinystr.h"
#include
<string>
#include
<windows.h>
#include
<atlstr.h>
using namespace std;

CString GetAppPath()
file:///C:/Users/MHAPDR~1/AppData/Local/Temp/enhtmlclip/Image(1).gif
{//获取应用程序根目录
file:///C:/Users/MHAPDR~1/AppData/Local/Temp/enhtmlclip/Image(2).gif    TCHAR modulePath[MAX_PATH];
    GetModuleFileName(NULL, modulePath, MAX_PATH);
    CString strModulePath(modulePath);
    strModulePath = strModulePath.Left(strModulePath.ReverseFind(_T('\\')));
    return strModulePath;
file:///C:/Users/MHAPDR~1/AppData/Local/Temp/enhtmlclip/Image(3).gif}


bool CreateXmlFile(string& szFileName)
{//创建xml文件,szFilePath为文件保存的路径,若创建成功返回true,否则false
    try
file:///C:/Users/MHAPDR~1/AppData/Local/Temp/enhtmlclip/Image(4).gif    {
        //创建一个XML的文档对象。
        TiXmlDocument *myDocument = new TiXmlDocument();
        //创建一个根元素并连接。
        TiXmlElement *RootElement = new TiXmlElement("Persons");
        myDocument->LinkEndChild(RootElement);
        //创建一个Person元素并连接。
        TiXmlElement *PersonElement = new TiXmlElement("Person");
        RootElement->LinkEndChild(PersonElement);
        //设置Person元素的属性。
        PersonElement->SetAttribute("ID", "1");
        //创建name元素、age元素并连接。
        TiXmlElement *NameElement = new TiXmlElement("name");
        TiXmlElement *AgeElement = new TiXmlElement("age");
        PersonElement->LinkEndChild(NameElement);
        PersonElement->LinkEndChild(AgeElement);
        //设置name元素和age元素的内容并连接。
        TiXmlText *NameContent = new TiXmlText("周星星");
        TiXmlText *AgeContent = new TiXmlText("22");
        NameElement->LinkEndChild(NameContent);
        AgeElement->LinkEndChild(AgeContent);
        CString appPath = GetAppPath();
        string seperator = "\\";
        string fullPath = appPath.GetBuffer(0) +seperator+szFileName;
        myDocument->SaveFile(fullPath.c_str());//保存到文件
file:///C:/Users/MHAPDR~1/AppData/Local/Temp/enhtmlclip/Image(5).gif    }
    catch (string& e)
    {
        return false;
    }
    return true;
}


bool ReadXmlFile(string& szFileName)
{//读取Xml文件,并遍历
    try
    {
        CString appPath = GetAppPath();
        string seperator = "\\";
        string fullPath = appPath.GetBuffer(0) +seperator+szFileName;
        //创建一个XML的文档对象。
        TiXmlDocument *myDocument = new TiXmlDocument(fullPath.c_str());
        myDocument->LoadFile();
        //获得根元素,即Persons。
        TiXmlElement *RootElement = myDocument->RootElement();
        //输出根元素名称,即输出Persons。
        cout << RootElement->Value() << endl;
        //获得第一个Person节点。
        TiXmlElement *FirstPerson = RootElement->FirstChildElement();
        //获得第一个Person的name节点和age节点和ID属性。
        TiXmlElement *NameElement = FirstPerson->FirstChildElement();
        TiXmlElement *AgeElement = NameElement->NextSiblingElement();
        TiXmlAttribute *IDAttribute = FirstPerson->FirstAttribute();
        //输出第一个Person的name内容,即周星星;age内容,即;ID属性,即。
        cout << NameElement->FirstChild()->Value() << endl;
        cout << AgeElement->FirstChild()->Value() << endl;
        cout << IDAttribute->Value()<< endl;
    }
    catch (string& e)
    {
        return false;
    }
    return true;
}

int main()
{
    string fileName = "info.xml";
    CreateXmlFile(fileName);
    ReadXmlFile(fileName);

}

C++ XML约会时间到直观解析TinyXML篇多实例申明 b2b软件

写本文的目的是为了方便大家了解C++ MSXML操作方法。

当然,C++中对MSXML的调用有多种,本文采用的方法是完全参照MSXML SDK提供的文档进行操作。

如果有什么错误,欢迎指正。


代码框架是基于vs2008 MFC 对话框程序(UNICODE)。对话框程序需要读者自己创建。


[cpp] view plain copy


  • #include <msxml6.h>  
  • #include <comutil.h>  
  • #pragma comment(lib, "comsuppwd.lib")  
  • void CXmlSampleDlg::OnBnClickedButton1()//按钮事件  
  • {  
  •     CoInitialize(NULL);  
  •     CComPtr<IXMLDOMDocument> spXmldoc;  
  •     HRESULT hr = spXmldoc.CoCreateInstance(L"MSXML2.DOMDocument.6.0");  
  •   
  •     if(SUCCEEDED(hr))  
  •     {  
  •         VARIANT_BOOL isSuccessFul;  
  •         CComVariant varXmlFile(L"a.xml");  
  •   
  •         spXmldoc->put_async(VARIANT_FALSE);  
  •         HRESULT hr= spXmldoc->load(varXmlFile, &isSuccessFul);  
  •   
  •         if(isSuccessFul==VARIANT_TRUE)  
  •         {  
  •             CComBSTR bstrXml;  
  •             CComPtr<IXMLDOMElement> spRoot=NULL;  
  •             CComPtr<IXMLDOMElement> spTheBook=NULL;  
  •             CComPtr<IXMLDOMElement> spTheElem=NULL;  
  •             CComPtr<IXMLDOMNode> spNewNode=NULL;  
  •   
  •             hr = spXmldoc->get_documentElement(&spRoot);  
  •             spRoot->get_xml(&bstrXml);  
  •             AfxMessageBox(L"1, 原始的XML");  
  •             AfxMessageBox(bstrXml);  
  •   
  •   
  •             spXmldoc->createElement(L"book", &spTheBook);  
  •             spXmldoc->createElement(L"name", &spTheElem);  
  •             spTheElem->put_text(L"新书");  
  •             spTheBook->appendChild(spTheElem, &spNewNode);  
  •             spTheElem.Release();  
  •             spNewNode.Release();  
  •   
  •             spXmldoc->createElement(L"price", &spTheElem);  
  •             spTheElem->put_text(L"20");  
  •             spTheBook->appendChild(spTheElem, &spNewNode);  
  •             spTheElem.Release();  
  •             spNewNode.Release();  
  •   
  •             spXmldoc->createElement(L"memo", &spTheElem);  
  •             spTheElem->put_text(L"新书的更好看。");  
  •             spTheBook->appendChild(spTheElem, &spNewNode);  
  •             spNewNode.Release();  
  •             spTheElem.Release();  
  •   
  •             spRoot->appendChild(spTheBook, &spNewNode);  
  •             spNewNode.Release();  
  •             spTheBook.Release();  
  •   
  •             spRoot->get_xml(&bstrXml);  
  •             AfxMessageBox(L"2, 新建一本书完成");  
  •             AfxMessageBox(bstrXml);  
  •             ////---  新建一本书完成 ----  
  •   
  •   
  •             ////---  下面对《哈里波特》做一些修改。 ----  
  •             ////---  查询找《哈里波特》----  
  •             CComPtr<IXMLDOMNode> spTheNode=NULL;  
  •             spRoot->selectSingleNode(L"/books/book[name='哈里波特']", &spTheNode);  
  •             hr=spTheNode.QueryInterface(&spTheBook);  
  •             spTheNode.Release();  
  •   
  •             spTheBook->get_xml(&bstrXml);  
  •             AfxMessageBox(L"3,《哈里波特》的XML");  
  •             AfxMessageBox(bstrXml);  
  •   
  •             ////---  此时修改这本书的价格 -----  
  •             CComPtr<IXMLDOMNodeList> spNodeList=NULL;  
  •             CComPtr<IXMLDOMNode> spListItem=NULL;  
  •             spTheBook->get_childNodes(&spNodeList);  
  •             spNodeList->get_item(1, &spListItem);  
  •             spNodeList.Release();  
  •             spListItem->put_text(L"15");  
  •   
  •             ////---  另外还想加一个属性id,值为B01 ----  
  •             CComVariant varId(L"B01");  
  •             spTheBook->setAttribute(L"id", varId);  
  •             varId.Clear();  
  •   
  •             spTheBook->get_xml(&bstrXml);  
  •             spTheBook.Release();  
  •             AfxMessageBox(L"4, 对《哈里波特》修改完成。");  
  •             AfxMessageBox(bstrXml);  
  •             ////---  对《哈里波特》修改完成。 ----  
  •   
  •   
  •             ////---  要用id属性删除《三国演义》这本书  ----  
  •             spRoot->selectSingleNode(L"/books/book[@id='B02']", &spTheNode);  
  •             hr=spTheNode.QueryInterface(&spTheBook);  
  •             spTheNode.Release();  
  •   
  •             spTheBook->get_xml(&bstrXml);  
  •             AfxMessageBox(L"5, 《三国演义》的XML");  
  •             AfxMessageBox(bstrXml);  
  •   
  •             CComPtr<IXMLDOMNode> spParentNode=NULL;  
  •             spTheBook->get_parentNode(&spParentNode);  
  •             spParentNode->removeChild(spTheBook, &spTheNode);  
  •             spTheNode.Release();  
  •             spParentNode.Release();  
  •             spTheBook.Release();  
  •   
  •             spRoot->get_xml(&bstrXml);  
  •             AfxMessageBox(L"6, 删除《三国演义》后的XML");  
  •             AfxMessageBox(bstrXml);  
  •   
  •   
  •             ////---  再将所有价格低于10的书删除  ----  
  •             spRoot->selectNodes(L"/books/book[price<10]", &spNodeList);  
  •             CComQIPtr<IXMLDOMSelection> spSomeBooks=spNodeList;  
  •             spNodeList.Release();  
  •   
  •             spSomeBooks->removeAll();  
  •             spSomeBooks.Release();  
  •   
  •             spXmldoc->get_xml(&bstrXml);  
  •             AfxMessageBox(L"7, 已经删除价格低于10的书");  
  •             AfxMessageBox(bstrXml);  
  •   
  •             spRoot.Release();  
  •             bstrXml.Empty();  
  •   
  •             //spXmldoc->save(varXmlFile); //保存xml。  
  •         }  
  •         varXmlFile.ClearToZero();  
  •     }  
  •   
  •     spXmldoc.Release();  
  •   
  •     CoUninitialize();  
  • }  



a.xml



[xhtml] view plain copy


  • <?xml version="1.0" encoding="UTF-8"?>  
  • <books>  
  • <book>  
  •   <name>哈里波特</name>  
  •   <price>10</price>  
  •   <memo>这是一本很好看的书。</memo>  
  • </book>  
  • <book id="B02">  
  •   <name>三国演义</name>  
  •   <price>10</price>  
  •   <memo>四大名著之一。</memo>  
  • </book>  
  • <book id="B03">  
  •   <name>水浒</name>  
  •   <price>6</price>  
  •   <memo>四大名著之一。</memo>  
  • </book>  
  • <book id="B04">  
  •   <name>红楼</name>  
  •   <price>5</price>  
  •   <memo>四大名著之一。</memo>  
  • </book>  
  • </books>   

 最近使用TinyXML进行C++ XML解析,感觉使用起来比较简单,很容易上手,本文给出一个使用TinyXML进行XML解析的简单例子,很多复杂的应用都可以基于本例子的方法来完成。以后的文章里会讲解使用Xerces进行C++ XML解析的例子,希望大家一起交流。

  TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows或Linux中编译。这个解析库的模型通过解析XML文件,然后在内存中生成DOM模型,从而让我们很方便的遍历这棵XML树。

  DOM模型即文档对象模型,是将整个文档分成多个元素(如书、章、节、段等),并利用树型结构表示这些元素之间的顺序关系以及嵌套包含关系。

  首先从网上下载TinyXML的库,文件夹的名字是TinyXpath,在工程里做如下配置:

  在附加包含路径里添加:你的tinyxpath路径/tinyxpath/include

  在附加库路径里添加:你的tinyxpath路径/tinyxpath/lib

  在对象/库路径里添加:tinyxpathd.lib,如果使用release版本,则是tinyxpath.lib。

  另外,由于我开发的项目是多线程的,所以设置了多线程的环境,因此使用TinyXML没有出现问题。本人将TinyXML写在一个单独的C++工程进行测试,发现如果不设置多线程的环境,会出现链接错误。我觉得原因可能是TinyXML使用了多线程环境,因此需要设置多线程的环境。在工程/设置下的C/C++选项卡中,选择Code Generation,在Use run-time library中选择Debug MultiThreaed DLL即可。

  本例的XML文件Students.xml如下:

  <Class name="计算机软件班">

  <Students>

  <student name="张三" studentNo="13031001" sex="男" age="22">

  <phone>88208888</phone>

  <address>西安市太白南路二号</address>

  </student>

  <student name="李四" studentNo="13031002" sex="男" age="20">

  <phone>88206666</phone>

  <address>西安市光华路</address>

  </student>

  </Students>

  </Class>

  程序代码XmlParseExample.cpp如下所示:

  #include <iostream>

  #include <string>

  #include <tinyxml.h>

  using std::string;

  int main()

  {

  TiXmlDocument* myDocument = new TiXmlDocument();

  myDocument->LoadFile("Students.xml");

  TiXmlElement* rootElement = myDocument->RootElement(); //Class

  TiXmlElement* studentsElement = rootElement->FirstChildElement(); //Students

  TiXmlElement* studentElement = studentsElement->FirstChildElement(); //Students

  while ( studentElement ) {

  TiXmlAttribute* attributeOfStudent = studentElement->FirstAttribute(); //获得student的name属性

  while ( attributeOfStudent ) {

  std::cout 《 attributeOfStudent->Name() 《 " : " 《 attributeOfStudent->Value() 《 std::endl;

  attributeOfStudent = attributeOfStudent->Next();

  }

  TiXmlElement* phoneElement = studentElement->FirstChildElement();//获得student的phone元素

  std::cout 《 "phone" 《 " : " 《 phoneElement->GetText() 《 std::endl;

  TiXmlElement* addressElement = phoneElement->NextSiblingElement();

  std::cout 《 "address" 《 " : " 《 phoneElement->GetText() 《 std::endl;

  studentElement = studentElement->NextSiblingElement();

  }

  return 0;

  }

  程序运行结果如下:

  name : 张三

  studentNo : 13031001

  sex : 男

  age : 22

  phone : 88208888

  address : 88208888

  name : 李四

  studentNo : 13031002

  sex : 男

  age : 20

  phone : 88206666

  address : 88206666

  本例中使用的是对xml文件进行解析,很容易掌握,但是很多开发人员不知道如何对xml 字符流(非xml文件)进行解析,我看了TinyXML提供的源代码,里面可以使用如下方法对xml流解析。对应于上例,代码如下:

  string xmlString =

  "<Class name=\"计算机软件班\">

  <Students>

  <student name=\"张三\" studentNo=\"13031001\" sex=\"男\" age=\"22\">

  <phone>88208888</phone>

  <address>西安市太白南路二号</address>

  </student>

  <student name=\"李四\" studentNo=\"13031002\" sex=\"男\" age=\"20\">

  <phone>88206666</phone>

  <address>西安市光华路</address>

  </student>

  </Students>

  </Class>";

  TiXmlDocument* myDocument = new TiXmlDocument();

  myDocument->Parse(xmlString.c_str());

  使用Parse函数就可以解析XML字符流了,这是很多开发者不太熟悉的情况。

  如果开发者开发特定应用,就可以使用上述类似方法,可能不需要完全处理每一个属性,比如可以对属性名进行判断,只处理自己需要的属性,或者自己需要的xml元素。还可以使用TinyXML的方法创建xml元素和xml属性,或者设置xml元素和属性对应的值,等等,如果读者想要类似的例子,可以留言写出。

  下面介绍TinyXML的一些类。在TinyXML中,根据XML的各种元素来定义了一些类:

  TiXmlBase:整个TinyXML模型的基类。

  TiXmlAttribute:对应于XML中的元素的属性。

  TiXmlNode:对应于DOM结构中的节点。

  TiXmlComment:对应于XML中的注释

  TiXmlDeclaration:对应于XML中的申明部分,<?versiong="1.0" ?>。

  TiXmlDocument:对应于XML的整个文档。

  TiXmlElement:对应于XML的元素。

  TiXmlText:对应于XML的文字部分

  TiXmlUnknown:对应于XML的未知部分。

  TiXmlHandler:定义了针对XML的一些操作。


unto出错了测试就用C++ 重载操作符无限检查各种错误逻辑问题next非常好用的准夸网自动信息发布软件
回复

使用道具 举报

0

主题

652

帖子

686

积分

积分
686
21#定制软件#
发表于 2017-7-23 00:07:00 | 只看该作者
位,修改的速度很快。

回复 支持 反对

使用道具 举报

0

主题

648

帖子

677

积分

积分
677
20#定制软件#
发表于 2017-7-20 14:30:00 | 只看该作者
不太了解的我,抱着试试的态度开始了第一次的合作,没有想到效果非常不错,在沟通的过程中,我也学会了很多装修知识,不仅店铺漂亮了,还交到了个朋友,不错不错!

回复 支持 反对

使用道具 举报

0

主题

593

帖子

603

积分

积分
603
19#定制软件#
发表于 2017-7-20 09:45:35 | 只看该作者
推荐!

回复 支持 反对

使用道具 举报

0

主题

1026

帖子

1111

积分

积分
1111
18#定制软件#
发表于 2017-7-19 20:58:26 | 只看该作者
酷很霸气哦!服务真的真的很好哟~~赞一个,还会推荐其他商家来的哦~~棒

回复 支持 反对

使用道具 举报

0

主题

627

帖子

625

积分

积分
625
17#定制软件#
发表于 2017-7-18 18:57:37 | 只看该作者
好,与卖家描述的完全一致,非常满意

回复 支持 反对

使用道具 举报

0

主题

1025

帖子

1027

积分

积分
1027
16#定制软件#
发表于 2017-7-18 05:25:13 | 只看该作者
。服务非常好。

回复 支持 反对

使用道具 举报

0

主题

1093

帖子

1105

积分

积分
1105
15#定制软件#
发表于 2017-7-13 08:05:48 | 只看该作者
,整体满意,好评

回复 支持 反对

使用道具 举报

0

主题

632

帖子

622

积分

积分
622
14#定制软件#
发表于 2017-7-13 01:56:54 | 只看该作者
有创意了,设计出来的样式很符合我们想要的风格,画面精美,做出来的效果不错,谢谢店家的耐心服务,很满意。

回复 支持 反对

使用道具 举报

0

主题

603

帖子

573

积分

积分
573
13#定制软件#
发表于 2017-7-11 21:56:35 | 只看该作者
很全喔,这个价格也是给力,总之物超所值哈

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关导读
信息发布软件苹果系统点击方法综合示例
苹果系统点击方法综合示例
信息发布软件AIWROK苹果系统找图方法完整示例集合
AIWROK苹果系统找图方法完整示例集合
信息发布软件苹果系统找图方法完整示例集合
苹果系统找图方法完整示例集合
信息发布软件苹果IOS系统找字OCR方法例子
苹果IOS系统找字OCR方法例子
信息发布软件AIWORK软件数组高级示例
AIWORK软件数组高级示例
信息发布软件AIWROK软件运算符封装库示例
AIWROK软件运算符封装库示例
信息发布软件AIWROK软件语法运行小示例
AIWROK软件语法运行小示例
信息发布软件AIWROK软件JS循环小示例
AIWROK软件JS循环小示例
信息发布软件AIWROK软件H5网页被主脚本获取值用法
AIWROK软件H5网页被主脚本获取值用法
信息发布软件AIWROK软件创建可暂停恢复的多线程任务
AIWROK软件创建可暂停恢复的多线程任务
信息发布软件AIWROK软件类型转换方法例子
AIWROK软件类型转换方法例子
信息发布软件AIWROK软件H5脚本执行与进度显示
AIWROK软件H5脚本执行与进度显示 .
信息发布软件AIWROK软件根据时间段执行异步任务支持多线程并行处理
AIWROK软件根据时间段执行异步任务支持多线程并行处理
信息发布软件H5自动开关执行脚本功能演示
H5自动开关执行脚本功能演示
信息发布软件AIWROK软件H5单选脚本运行示例
AIWROK软件H5单选脚本运行示例
信息发布软件H5任务脚本选择与执行中心
H5任务脚本选择与执行中心
信息发布软件H5里CheckBox控件演示
H5里CheckBox控件演示
信息发布软件AIWROK软件正则用法实际例子
AIWROK软件正则用法实际例子
信息发布软件AIWROK软件权限管理器实现
AIWROK软件权限管理器实现
信息发布软件AIWORK软件节点方法无碍示例子
AIWORK软件节点方法无碍示例子
信息发布软件JSON.stringify 和 JSON.parse 完整示例
JSON.stringify 和 JSON.parse 完整示例
信息发布软件AIWROK软件展示JavaScript各种语句标识符的用法
AIWROK软件展示JavaScript各种语句标识符的用法
信息发布软件JS巧妙地组合使用各种条件语句
JS巧妙地组合使用各种条件语句
信息发布软件AIWROK手机数据库MySQL数据库截图片批量上传操作脚本
AIWROK手机数据库MySQL数据库截图片批量上传操作脚本
信息发布软件HID中文输入智能打字功能
HID中文输入智能打字功能
信息发布软件AIWROK软件对象工具函数库例子
AIWROK软件对象工具函数库例子
信息发布软件AIWROK软件H5交互演示黄色主题
AIWROK软件H5交互演示黄色主题
信息发布软件H5单按钮执行脚本示例
H5单按钮执行脚本示例
信息发布软件苹果H5界面完整调用脚本示例
苹果H5界面完整调用脚本示例
信息发布软件AIWROK软件平台设备信息全面检测工具例子
AIWROK软件平台设备信息全面检测工具例子
信息发布软件AIWROK创建和放大日志窗口并展示动态内容
AIWROK创建和放大日志窗口并展示动态内容
信息发布软件AIWROK软件device相关方法获取设备信息例子
AIWROK软件device相关方法获取设备信息例子[/backcolor]
信息发布软件数据库MySQL实时内容随机调用
数据库MySQL实时内容随机调用
信息发布软件AIWROK软件分享一个特效苹果H5页面
AIWROK软件分享一个特效苹果H5页面
信息发布软件数据库MYQ业务流程心跳程序启动
数据库MYQ业务流程心跳程序启动
信息发布软件数据库MySQL功能支持创建表插入中文数据查询删除功能例子
数据库MySQL功能支持创建表插入中文数据查询删除功能例子
信息发布软件AIWROK软件Zip 高级操作复杂示例
AIWROK软件Zip 高级操作复杂示例
信息发布软件AIWROK软件txt_文件读写方法小结
AIWROK软件txt_文件读写方法小结
信息发布软件AIWROK软件file文件操作方法小结
AIWROK软件file文件操作方法小结
信息发布软件AIWORK软件配置读写H5演示配套脚本
AIWORK软件配置读写H5演示配套脚本
信息发布软件AIWROK配置读写功能演示示例
AIWROK配置读写功能演示示例
信息发布软件AIWROK截图缓存工具
AIWROK截图缓存工具
信息发布软件AIWROK线程许可证工具
AIWROK线程许可证工具
信息发布软件整理了AIWROK环境下常用的Date对象和sleep对象方法
整理了AIWROK环境下常用的Date对象和sleep对象方法
信息发布软件FastUI界面普通用法
FastUI界面普通用法
信息发布软件FastUI界面类[window]方法小结
FastUI界面类[window]方法小结 方法 1:close(关闭指定窗口)方法 2:closeAll(关闭所有窗口)方法 3:loadUI(加载 UI 界面)方法 4:onClose(监听窗口关闭事件)方法 5:onLoad(监听窗口加载事件)方法 6:setFull(设置窗口全屏)方法 7:setHeight(设置窗口高度)方法 8:setHidden(隐藏窗口)方法 9:setLeft(设置窗口 X 轴坐标)方法 10:setTop(设置窗口 Y 轴坐标)方法 11:setVisable(显示隐藏的窗口)方
信息发布软件AIWROK软件按钮监听UI界面与事件监听功能演示
AIWROK软件按钮监听UI界面与事件监听功能演示.
信息发布软件AWIROK软件多选[uiCheckBox]方法小结
AWIROK软件多选方法小结 方法一:findByID 加载多选控件方法二:getAllChecked 获取所有选中项方法三:getAllSelect 获取所有选项方法四:getChecked 获取某个选项是否选中方法五:setChecked 设置某个选项是否选中方法六:setCheckeds 设置多个选项是否选中方法七:setHeight 设置高度
信息发布软件AIWROK日志演示开启日志显示 → 放大 → 关闭代码
AIWROK日志演示开启日志显示 → 放大 → 关闭代码
信息发布软件&#127983;AIWROK数组方法高级应用案例
🏯AIWROK数组方法高级应用案例
信息发布软件AIWROK软件日志悬浮窗简化版自动切换位置
AIWROK软件日志悬浮窗简化版自动切换位置
信息发布软件AIWROK软件String实例演示
AIWROK软件String实例演示
信息发布软件AIWROK软件S内置String类[String]方法小结
AIWROK软件S内置String类[String]方法小结 方法 1:charAt[/backcolor]方法 2:charCodeAt[/backcolor]方法 3:indexOf[/backcolor]方法 4:lastIndexOf[/backcolor]方法 5:length[/backcolor]方法 6:match[/backcolor]方法 7:replace[/backcolor]方法 8:replaceAll[/backcolor]方法 9:split[/backcolor]方法 10:startsWith[/backcolor]方法 11:substr[/backcolor]方法 12:substring[/backcolor]方法 13:trim[/backcol
信息发布软件AIWROK软件完整的WebSocket客户端示例
这段代码是一个完整的WebSocket客户端示例,用于连接到指定的WebSocket服务器并处理各种事件。具体来说,代码的作用如下: 定义服务器地址:首先定义了一个服务器的IP地址和端口号 var ip = "154.37.221.104:8886";。 创建WebSocket对象:尝试创建一个新的WebSocket对象 var ws = new WebSocket();。注意,这里的 new ws() 应该是 new WebSocket()。 添加事件监听器:代码中尝试为WebSocket对象添加事件监听器,但这里有一个错误。
信息发布软件AIWROK软件苹果系统中实现四种基本滑动操作
AIWROK软件苹果系统中实现四种基本滑动操作
信息发布软件hid的滑动没有百分比坐标滑动吗
hid的滑动没有百分比坐标滑动吗
信息发布软件单选控件[uiRadioButton]方法小结
单选控件方法小结 方法 1:加载单选控件[/backcolor]方法 2:获取选中项[/backcolor]方法 3:设置高度[/backcolor]方法 4:设置选中项[/backcolor]
信息发布软件AIWROK软件无障碍触摸操作示例:点击、左右滑动、上下滑动实例
AIWROK软件无障碍触摸操作示例:点击、左右滑动、上下滑动实例
信息发布软件AIWROK软件安卓随机工具应用函数生成
AIWROK软件安卓随机工具应用函数生成
信息发布软件用在AIWORK软件代码中的实用符号分类整理2
用在AIWORK软件代码中的实用符号分类整理2 软件IDE用Emoji符号分类整理(含用途说明)一、表情与情感1. 微笑 [*]😀 笑脸(基础开心反馈,用于操作成功后的友好提示) [*]😃 笑脸大眼睛(强化开心情绪,用于重要任务完成后的积极反馈) [*]😄 笑脸和微笑的眼睛(温和友好的状态,用于日常交互中的正向回应) [*]😁 带着微笑的眼睛(轻松愉悦的反馈,用于轻度成功或趣味操作) [*]
信息发布软件AIWROK软件图像二值化的各种方法和应用场景
AIWROK软件图像二值化的各种方法和应用场景
信息发布软件AIWROK软件找图区分页面变化和卡死状态
AIWROK软件找图区分页面变化和卡死状态
信息发布软件AIWROK苹果系统Map 数据管理[map]小结
AIWROK苹果系统Map 数据管理[map]小结 方法一:add(添加键值对)[/backcolor]方法二:delete(删除指定键值对)[/backcolor]方法三:clear(清空所有键值对)[/backcolor]方法四:get(根据键获取值)[/backcolor]方法五:getAllValue(获取所有值)[/backcolor]方法六:toString(转换为字符串)[/backcolor]完整示例:
信息发布软件AIWROK软件用图找图示例templateMat方法
AIWROK软件用图找图示例templateMat方法
信息发布软件苹果JS代码运行时[selfRunTime]小结
苹果JS代码运行时[selfRunTime]小结 方法一:stop 停止运行[/backcolor]方法二:runOnUIThread ui 线程中运行函数[/backcolor]

QQ|( 京ICP备09078825号 )

本网站信息发布软件,是可以发布论坛,发送信息到各大博客,各大b2b软件自动发布,好不夸张的说:只要手工能发在电脑打开IE能发的网站,用这个宣传软件就可以仿制动作,进行推送发到您想发送的B2B网站或是信息发布平台上,不管是后台,还是前台,都可以进行最方便的广告发布,这个广告发布软件,可以按月购买,还可以试用软件,对网站的验证码也可以完全自动对信息发布,让客户自动找上门,使企业轻松实现b2b发布,这个信息发布软件,均是本站原创正版开发,拥有正版的血统,想要新功能,欢迎提意见给我,一好的分类信息群发软件在手,舍我其谁。QQ896757558

GMT+8, 2026-2-3 06:37 , Processed in 0.314761 second(s), 60 queries .

宣传软件--信息发布软件--b2b软件广告发布软件

快速回复 返回顶部 返回列表