无法获取输出文件以从 infile 读取数据(c++)
Can't get outfile to read data from infile(c++)
输入文件中的数据:
威尔逊·杰克 87236.45 11
我的代码:
#include <iostream>
#include <fstream>
#include <iomanip>
#include <string>
using namespace std;
int main()
{
ofstream out;
ifstream in;
string Lastname, Firstname;
double salary;
int increase;
in.open("Lab5_Ex_3_Input.txt");
out.open("Lab5_Ex_3_Output.txt");
in >> Lastname >> Firstname >> salary >> increase;
out << "Lastname: "<< Lastname << "Firstname " << Firstname << "salry :" << salary <<"increase: "<< increase <<endl;
in.close();
out.close();
return 0;
}
因此,当我检查输出文件时,我得到:
姓氏: 名字 薪水 :-9.25596e+061增加: -858993460
我做错了什么?
试试这个:
if (!(cin >> value >> value2 >> value3)) {
cout << "input failed" << endl;
return -1;
}
我的猜测是您的输入失败。您还可以检查文件是否正确打开,您的代码丢失了。
顺便说一句:没有必要显式关闭流,当它们超出范围并调用它们的析构函数时,它们会自动关闭。
程序可能在读取输入文件时遇到问题。为什么?基于输出值:
姓氏: 名字 薪水 :-9.25596e+061增加: -858993460
这是因为 Lastname
和 Firstname
都是空的(即冒号后没有任何内容),当您像在代码中所做的那样取消初始化变量时,salry
和 increase
后面的数字很常见。
您应该做的是检查文件是否已打开:
if (!in.is_open()) {
std::cerr << "Error opening input file!n";
exit(1);
}
相关文章:
- C++将文本文件中的数据读取到结构数组中
- 为 Sql 服务器实现 odbc 包装器.将数据库数据读取为字符或要求驱动程序将数据转换为 C 类型
- 如何将来自文本文件的数据读取到结构的int阵列中
- 如何将不同长度的数据读取到 2D 数组中
- 从TXT文件到C 的结构向量中的数据读取
- 将sqlite原始数据读取到qbyTearray
- 如何将来自输入TXT文件的数据读取到2 C 数组中
- 使用MQQueue将数据读取到缓冲区中时麻烦
- 在 VC++ 中将类数据读取和写入二进制文件
- 将数据从数据读取器终端获取到GUI(QtCreator)
- C 将数据读取到一个结构,但它跳过了我的一个获取线,使该元素空白
- C++将二进制数据读取到结构
- c++我需要将文件中的数据读取到多维数组中,然后用一种数据类型对数组进行排序.怎样
- 对齐数据:速度取决于恒定数据读取的相对采样大小和采样频率
- 如何将文件中的数据读取到数组中
- 如何使用Visual C++应用程序的完整应用程序数据读取Minidump的应用程序数据
- 如何将csv文件数据读取到数组中
- 用C++将格式化的数值数据读取到数组中
- 正在从文件中将数据读取到结构数组中
- 将分离的数据读取到数组结构c++中