Ads removed from the pastie. \o/
Running costs stayed. :-(
Donations welcome!

Bitcoin: 1QC38uPBSy7WSYz1whM5SYTHAdhqkN6o8V
Ethereum: 0x0855778a6181a69cc7d5d08c71c4f5846010eb67
Verge: D8fo1fszrNmUK4kfQW5owhYMv3osPvgn2g
Recent entries
2020-07-12 18:05:07
[Sleduj] V síti (2020) C...
2020-07-12 18:04:04
https://www.residentadvis...
2020-07-12 17:58:35
zxczxc
2020-07-12 17:49:38
tsuburumashi
2020-07-12 17:42:12
No title specified
2020-07-12 17:40:31
sdgsdfhdfhdfgh zsdfhsdfgj...
2020-07-12 17:36:28
we wer werr rttyuuik
2020-07-12 17:33:45
Usman vs Masvidal" liVe S...
2020-07-12 17:30:08
ETH SSH wallet
2020-07-12 17:29:40
guishisoku
Permanent entries
2014-10-14 21:12:28
Boost property tree - Ite...
2013-10-18 08:24:21
Resize images in a folder...
2013-04-29 17:23:35
Find bad words in a text,...
2013-02-12 20:26:45
Merge two boost property ...
2012-12-18 16:21:40
OpenCV: Access/modify ima...
2012-11-19 10:48:40
Reading a boost::property...
2012-04-10 00:11:46
Convert hex to string or ...
2012-02-18 00:12:04
Screw up []-operator for ...
2012-02-16 03:02:24
Merge continuous numbers ...
2012-01-18 22:26:01
(PHP) Generate / Create (...
2011-04-19 16:05:25
Calculate one's age in ye...
2011-04-18 15:26:45
(PHP) Generate / Create r...
2010-08-26 15:18:00
Pick the first element (k...
2010-07-28 10:36:45
Quakenet - Snailbot comma...
2010-06-21 21:30:52
Using the MATLAB profiler...
2010-05-31 06:31:14
PHP truncation function
2010-05-06 20:49:26
Quakenet - Fishbot comman...
Paste ID: # TPfHg
Date posted: Mon, 19 Nov 2012 10:48:40 +0000
Date of expiration: never (permanent entry)
Description:

Reading a boost::property_tree::ptree recursively and make it an URL query string

  1. string readPropertyTreeRecursive( boost::property_tree::ptree& rptree, string& prefix )
  2. {
  3.   // Leaf
  4.   string ret;
  5.   if( rptree.size() == 0 )
  6.   {
  7.     ret = prefix + "=" + rptree.data() + "&";
  8.     return ret;
  9.   }
  10.   // Subtree
  11.   else
  12.   {
  13.     BOOST_FOREACH( boost::property_tree::ptree::value_type& child, rptree )
  14.     {
  15.       string subprefix;
  16.  
  17.       // Avoid adding a leading dot
  18.       if( !prefix.empty() )
  19.         subprefix = prefix + std::string( "." ) + child.first.data();
  20.       else
  21.         subprefix = child.first.data();
  22.  
  23.       // Build up return string recursively
  24.       ret += readPropertyTreeRecursive( child.second, subprefix );
  25.     }
  26.   }
  27.   return ret;
  28. }
You can paste a correction or amendment to the upper paste or a new paste down below.