C++之String的find方法,查找一个字符串在另一个字符串的什么位置;leveldb字符串转数字解析办法


由于leveldb基于key value,而且是根据字符串进行排序的。key 和value都是string类型的,对于我要处理的有许多数字,所以就要找一个C /C++解析文本的工具了。

C 在这方面很弱,你必须编写大量的代码,才能完成看似简单的工作,所以就用C++的string的方法看看了。

首先 文档 我真是郁闷,只能搜索了,不过这里有而过好网站:http://www.cplusplus.com/reference/string/string/find/ 以后可以来这里找示例了,linux下的man不见得 那么好,对于编程来讲,烂透了。

我其实只想实现1个功能,一个是从字符串A找到两个,,之间的数据。

 

int found=gps.find(",",0);int start,length;
DEBUG_FOUND(found);
start=found;
found=gps.find(",",0+found+1);
DEBUG_FOUND(found);
length=found-start;
std::cout<<"gps's longitude="<<gps.substr(start+1,length-1)<<";"<<endl;

found=gps.find(",",0+found+1);
DEBUG_FOUND(found);
start=found;

found=gps.find(",",0+found+1);
DEBUG_FOUND(found);
length=found-start;
std::cout<<"gps's latitude="<<gps.substr(start+1,length-1)<<";"<<endl;


还是感觉太复杂了。找一个子字符串,要查找两次。

 

 

 

 

这个博客讲的不错:

http://www.byvoid.com/blog/cpp-string/


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM