代码实例:

#include <iostream>
#include <sstream>
#include <fstream>
using namespace std;int main()
{string str("55.5818061829 119.6388702393 22.33");double t;istringstream iss;iss.str(str);while(iss>>t) {cout<<t<<endl;}return 0;
}

注意,字符串中除了数字之外,不要有任何多余的符号,否则会失败。在不熟悉正则表达式的情况下,这是一个很好的方式,尤其是读取文件中数据的时候。

下面给出读取文件的操作,文件由数字组成,先给出文件的数据

1.467284085736863 9.376511821522355 1.3649498766482537 8.088857549330717 2.3698882782758313 0.5225871352552025 0.6013677353526695 0.9871267670749978 0.7305225913374725 8.77 8.14 2.95 1.00
6.041632454180849 4.535001565129676 3.3419336714886585 1.7315455144763214 9.220522172161063 9.793391925366667 0.2878894971039667 0.7862232406898116 0.72268766617564 5.56 15.43 8.38 1.00
0.6158453075118819 7.724459956144301 0.5463212721843924 9.418369709345624 3.497235547312484 3.8047032003875527 0.734118480988751 0.4060951140458058 0.5793220401522091 8.59 7.85 8.11 1.00
4.7685414389496525 3.5561636748781944 0.7380024353322878 6.738748696346324 9.993213301145895 6.607137410686869 0.2675133058358534 0.7928485178120843 0.6138402863139218 8.13 14.66 4.31 1.00
0.07521491667869085 3.3382590774260956 7.8307214874066124 2.4160863939202546 5.347946916067755 1.3302075851573736 0.08288941437376163 0.3486248641364451 0.43751931623649365 3.73 7.53 8.12 1.00
7.188894531065696 9.63371912799707 0.3937955195872622 3.4064493716649604 0.7316971537091621 2.3915790814548954 0.6686869130889267 0.380859571965775 0.5119530902547114 7.86 10.32 4.97 1.00
3.2765247206521178 7.961855941273122 9.64131927218312 8.043113936024561 5.594476179791733 7.052954362787583 0.02976772757227908 0.9069645286116979 0.2781294472977186 15.02 12.89 10.36 1.00
8.9009368950318 4.304817904602576 0.5774683034004457 5.1252895259247815 0.5573906664234685 3.8393256771269457 0.01789943667291516 0.34684869384120254 0.21521074875512458 11.66 6.17 1.19 1.00
3.4688770006932534 6.7391094786095405 2.968489720797179 4.404010211807334 7.347207015679417 7.328173698226389 0.8430421343154131 0.29390949142436906 0.8157082348902395 6.28 11.24 12.02 1.00
1.7647372666533434 7.95513095522135 0.4604028337109789 3.3475624805081674 9.57207772646172 7.98047012813255 0.3955382216600083 0.1154991722055756 0.6186918869242125 1.36 15.41 10.54 1.00

数据全部由空格分隔开,每行的数据个数是相同的,下面给出读取并输出的示例代码:

#include <iostream>
#include <sstream>
#include <fstream>
using namespace std;int main() {// 每个词读取,按照空格进行分隔ifstream fin("transform.txt");string s;while(fin>>s) {cout<<s<<endl;}fin.close();s.clear();cout<<"==============================="<<endl;// 按行读取,每行的结束是回车区分fin.open("transform.txt");while(getline(fin,s)) {cout<<s<<endl;}return 0;
}

结合之前读取数据的代码,一般可以这样组合读取测试数据:

#include <iostream>
#include <sstream>
#include <fstream>
using namespace std;int main() {ifstream fin;istringstream iss;string s;double t;// 按行读取,每行的结束是回车区分fin.open("transform.txt");while(getline(fin, s)) {iss.clear();iss.str(s);while(iss>>t) {cout<<t<<" ";}cout<<endl;}return 0;
}

这种方式特别适合读取测试数据,尤其是单元测试的时候。

C++读取字符串中的数字的方法相关推荐

  1. 读取字符串中的数字和小数

    package com.jm.label.tools; import java.util.Map; import java.util.TreeMap; import java.util.regex.M ...

  2. C++ 小功能算法模板:读取字符串中的数字

    读取字符串中的数字 #include <iostream> #include <vector> #include <string> #include <cst ...

  3. JAVA 提取字符串中的数字相加方法

    String[] ss = 字符串.split("\\D+"); int sum = 0; for (String string : ss) {     if (!"&q ...

  4. php提取字符串中数字,php提取字符串中的数字教程

    字符串是我们程序员必定接触法人,有时候工作中需要在一串字符串中将所有的数字提取出来,其实研究一下这种方法还挺多,对如何使用PHP将字符串中的数字提取出来的功能我们做了一个小总结,和大家一起分享一下,总 ...

  5. java中判断字符串是否为数字的方法 StringUtil包函数

    java中判断字符串是否为数字的方法: 1.用JAVA自带的函数 public static boolean isNumeric(String str){   for (int i = 0; i &l ...

  6. java读取字符串中数字

    java从字符串中提取数字 随便给你一个含有数字的字符串,比如: String s="eert343dfg56756dtry66fggg89dfgf"; 那我们如何把其中的数字提取 ...

  7. php 取字符串中的字母数字,php如何提取字符串中的数字?php提取字符串中数字的方法总结(附代码)...

    本篇文章给大家带来的内容是关于php如何提取字符串中的数字?php提取字符串中数字的方法总结(附代码) ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. PHP提取字符串中的第一组数字 ...

  8. JavaScript 提取字符串中的数字 几种方法

    js提取字符串中的数字 1.前面带数字,后面非数字,可以直接用parseFloat()函数: var num1 = parseFloat("2.89元"); //num1 : 2. ...

  9. python输入一串字符串、输出字符串中的数字_Python 字符串与数字输出方法 如何在python中输入字符串,输出十进制...

    python将字符串中的数字乘以2并输出整个字符串 2018 Amazon Jeff Bezos 1120 4036 Amazon Jeff Bezos 2240 def db(num): impor ...

最新文章

  1. 【Amazon 必考】Amazon Leadership Principles 亚马逊领导力准则
  2. Win10隐藏硬盘分区
  3. 软件测试真实项目_企业中软件测试的项目流程
  4. 技巧: 用 JAXM 发送和接收 SOAP 消息—Java API 使许多手工生成和发送消息方面必需的步骤自动化...
  5. 应用adb发布apk到android avd模拟器
  6. Qt中的QColorDialog
  7. AB1601定时器timer0,timer1简介
  8. php 创建 cookie文件,PHP创建Cookie数组
  9. CDN预热与刷新在促销活动中的应用
  10. ggplot2设置坐标轴范围_R语言数据可视化| ggplot2中会“分身术”的facet_wrap()与facet_grid()...
  11. 求以下double数组的平均值(四舍五入保留两位小数):
  12. python编写交互界面查分app_Django项目中model的数据处理以及页面交互方法
  13. ExtJS Panel主要配置列表
  14. 新手先学java还是python_2018年,初学者学Java还是Python?统计数据给你答案
  15. mysql服务性能优化—my.cnf配置说明详解
  16. 华为交换机 tagged 与 untagged 的关系、H5C 开web管理、telnet管理
  17. 计算机word2010试题,对口升学计算机Word2010练习题
  18. ArcGIS 制作中国区的数字高程DEM地图(附中国区STRM 90m DEM百度云免费下载链接)
  19. 年龄识别之ssrnet
  20. 机载激光雷达测量技术理论与方法读书笔记(3)机载激光雷达测量数据的滤波分类

热门文章

  1. string转换函数以及hnu暑期实训部分和A+B的例题
  2. AcWing1064.骑士(状压DP)题解
  3. 6-1 健壮性与正确性
  4. AD20元件重叠绿色报错的解决方法,距离太近绿色报错
  5. 用C语言编写顺序存储的线性表(含代码实现)
  6. Java SE 8 docs:Static Methods、Instance Methods、Abstract Methods、Concrete Methods和Fields
  7. 关于计算机学科的一些期刊和会议(转)
  8. 十二 Spring的AOP开发入门,整合Junit单元测试(AspectJ的XML方式)
  9. 面试题:把字符串转换为整数
  10. 图像处理基本算法-直方图均衡