url Qt编程中的解析与组合

url Qt编程中的解析与组合

这里输出的时候出了问题,密码没有显示,诡异,哪位老哥知道的话告诉一下

url结构

协议部分://用户名:密码@域名部分:端口部分/虚拟目录/文件?参数部分#錨部分

url Qt编程中的解析与组合

url 解析代码

  QString url_str="http://admin:[email protected]:8080/news/index.asp?boardID=5&ID=24618&page=1#name";
  QUrl tmp_url(url_str);
  /*解析*/
  qDebug()<<"url"<<tmp_url<<endl;
  qDebug()<<"url userName"<<tmp_url.userName()<<endl;
  qDebug()<<"url password"<<tmp_url.password()<<endl;
  qDebug()<<"url  host"<<tmp_url. host()<<endl;
  qDebug()<<"url port"<<tmp_url.port()<<endl;
  qDebug()<<"url path"<<tmp_url.path()<<endl;
  qDebug()<<"url query"<<tmp_url.query()<<endl;
  qDebug()<<"url scheme"<<tmp_url.scheme()<<endl;
  qDebug()<<"url fragment"<<tmp_url.fragment()<<endl;

  • 另外由于query可以携带参数和信息,因此具有很大操作空间,由特定类QUrlQuery进行操作

url 组合代码

  /*组合*/
  QUrl res_url;
  res_url.setScheme("http");
  res_url.setHost("www.aspxfans.com");
  res_url.setPassword("123456");
  res_url.setUserName("admin");
  res_url.setPath("/news/index.asp");
  res_url.setQuery("boardID=5&ID=24618&page=1");
  res_url.setFragment("name");
  qDebug()<<"res_url:"<<res_url<<endl;

测试结果

url Qt编程中的解析与组合