C++ 使用字符串从文件读取相册信息时调用Abort
在运行代码时调用了abort,尽管它已成功生成。有谁能给我一些建议,让我的代码更好地运行,这样就不会调用abort了? 它引用了两个文本文件,但我的代码如下:C++ 使用字符串从文件读取相册信息时调用Abort,c++,string,abort,C++,String,Abort,在运行代码时调用了abort,尽管它已成功生成。有谁能给我一些建议,让我的代码更好地运行,这样就不会调用abort了? 它引用了两个文本文件,但我的代码如下: #include <iostream> #include <string> #include <fstream> using namespace std; int main() { ifstream fin("Album Name1.txt"); string album_name;
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("Album Name1.txt");
string album_name;
string artist = album_name.substr(0, album_name.find("-"));
cout << "Artist : " << artist << endl;
string album = album_name.substr(album_name.find("-"), album_name.rfind("-"));
cout << " Album Title: " << album << endl;
string song = album_name.substr(album_name.length(), album_name.rfind("-"));
cout << " Song Title : " << song << endl;
string time = album_name.substr(album_name.find("2"), (album_name.find("2")));
string minutes = time.substr(0, 0);
string seconds = time.substr(1, 2);
string minutes_seconds = minutes + ":" + seconds;
cout << "Run Time: " << minutes_seconds << endl;
cout << "Copyright (c) Bruce Springsteen, 1984";
fin.close();
fin.clear();
ifstream ifin("Album Name2.txt");
string album2_name;
string artist2 = album2_name.substr(0, album2_name.find("-"));
cout << "Artist : " << artist2 << endl;
string album2 = album2_name.substr(album2_name.find("-"), album2_name.rfind("-"));
cout << " Album Title: " << album2 << endl;
string song2 = album2_name.substr(album2_name.length(), album2_name.rfind("-"));
cout << " Song Title : " << song2 << endl;
string time2 = album2_name.substr(album2_name.find("2"), (album2_name.find("2")));
string minutes2 = time2.substr(0, 0);
string seconds2 = time2.substr(1, 2);
string minutes_seconds2 = minutes2 + ":" + seconds2;
cout << "Run Time: " << minutes_seconds2 << endl;
cout << "Copyright (c) Maroon 5, 2004";
ifin.close();
return 0;
}
#包括
#包括
#包括
使用名称空间std;
int main()
{
ifstream fin(“唱片集名称1.txt”);
字符串相册名称;
string artist=album\u name.substr(0,album\u name.find(“-”);
cout您忘记设置或读取唱片集名称,因此整个算法都在处理一个空字符串
假设您打算从输入文件中读取唱片集名称,您应该写:
ifstream fin("Album Name1.txt");
string album_name;
std::getline(fin,album_name);
请不要在并没有上下文的情况下转储整个代码列表。在请求帮助之前,请将代码编辑到a。若您能告诉我们程序在正常工作时应该做什么,可能会有所帮助。此外,请提供一个输入文件结构的示例。最后,仅通过查看您的代码,它看起来不像de>ifstreams
正在使用中。签出tipsIt应该从文本文件中读取有关艺术家的专辑详细信息,然后在cout中列出。