gpt4 book ai didi

c++获取txt文件中的一行数据

转载 作者:太空宇宙 更新时间:2023-11-04 16:22:54 25 4
gpt4 key购买 nike

我想从一个 txt 文件中读取数据,但我无法获取它。我是 C++ 的新手。这是我的代码,但它不起作用。我用了 getline(),

 ifstream inFile;
string sPassWord;
inFile.open("QdatPassWordconfig.config");
inFile.seekg(0,ios::end);
int length=inFile.tellg();

if (inFile.is_open())
{
while (!inFile.eof())
{
getline(inFile,sPassWord);
cout<<sPassWord<<endl;
}

cout<<"get data from txt file"<<endl;
// here ,I cannot read data from file
cout<<sPassWord<<endl;
}

if(!inFile.is_open() || length==0)
{
cout<<"file is create or write"<<endl;
sPassWord="BdsWUjT26";
ofstream outFile;
outFile.open("QdatPassWordconfig.config");
outFile<<sPassWord<<endl;
outFile.close();
}
inFile.close();
cout<<sPassWord<<endl;

最佳答案

不清楚您是在尝试读取文件的第一行、文件的最后一行还是文件的所有行。这里是每种可能性的程序片段:

读取文件的第一行:

// UNTESTED
{
ifstream inFile("QdatPassWordconfig.config");
string sPassWord;
if(std::getline(inFile, sPassWord)) {
std::cout << "Password is: " << sPassWord << "\n";
} else {
std::cout << "No password available.\n"
}
}

读取文件的所有行:

// TESTED
#include <iostream>
#include <fstream>
#include <string>

int main ()
{
std::ifstream inFile("QdatPassWordconfig.config");
std::string sPassWord;
while(std::getline(inFile, sPassWord)) {
std::cout << "Password is: " << sPassWord << "\n";
}
}

读取文件的最后一行:

// UNTESTED
{
ifstream inFile("QdatPassWordconfig.config");
string sPassWord;
int lineCount = 0;
while(std::getline(inFile, sPassWord)) {
lineCount++;
}
if(lineCount) {
std::cout << "Password is: " << sPassWord << "\n";
} else {
std::cout << "No password available.\n";
}
}

关于c++获取txt文件中的一行数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15080652/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com