c++ - 如何从文件中读取用空格分隔的数字
问题描述
我有一个包含数字的文本文件,第一个数字是用不同数字系统编写的某个数字,然后是一个空格,然后是另一个数字 - 这是第一个数字写入的基数。例如:
1011011 2
1212011 3
1AB13 12
etc...
我必须使用我已经拥有的函数将文件中的所有数字转换为十进制系统。它需要两个变量,第一个是用不同数字系统编写的数字,另一个是该系统的基数,然后将该数字转换为十进制并将其写入另一个文件。
如何从文件中读取数据,以便第一个数字进入第一个变量,而基数进入第二个变量?
解决方案
您可以将数字读取为字符串,然后将其基数读取为数字,通过std::ifstream::operator>>
. 然后,您可以转换为基数 10。
#include <fstream>
#include <iostream>
std::ifstream ifs("test.txt");
std::string num;
int base;
while (ifs >> num >> base)
{
std::cout << num << " in base " << base << "\n";
}
推荐阅读
- node.js - 将 MongoDB 与 Mongoose 连接起来。但返回... const Schema = require('./schema');
- android - 寻找最近的蓝牙设备
- c# - 仅使用默认库的 C# 相机捕获
- angular - 有条件的
- java - 从 XMLGregorianCalendar 获取日期
- reactjs - 更新正在返回的函数是内部渲染警告:在现有状态转换期间无法更新 reactjs
- c# - Entity Framework Core 运行种子
- python - Django 信号与通道
- single-sign-on - SSO samlv2 adfs 通过身份验证
- php - Laravel 5.4.3 会话不适用于新请求