好的,这是我第二次为我的程序寻求帮助,我知道我几乎得到了它,但我无法弄清楚。所以现在我正在尝试编写一个程序,让用户以 dd/mm/yyyy 格式输入日期并将其作为月份日期、年份返回。所以 01/01/1990 变成了 1990 年 1 月 1 日。我需要使用一个文本文件,其中包含月份名称以及对应的数字。所以文本文件的列表如下所示:
01January
02February
03March
.. 等等。
到目前为止,我有这个:
// reading a text file
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main ()
{
string thedate; //string to enter the date
string month; // this string will hold the month
ifstream myfile ("months.txt");
cout << "Please enter the date in the format dd/mm/yyyy, include the slashes: " << endl;
cin >> thedate;
month = thedate.substr( 3, 2 );
string newmonth;
if (myfile.is_open())
{
while ( myfile.good() )
{
getline (myfile,newmonth);
newmonth.find(month);
cout << newmonth << endl;
}
myfile.close();
}
else cout << "Unable to open file";
return 0;
}
所以我已经能够从用户输入中提取月份,并将其存储为月份,我只是不太确定如何搜索那个月份的文本文件,并且只将月份的名称返回到一个新的字符串中,只能从那个线。现在如果我输入 02/05/1990,它将输出
05
05
05
05
05
.. for 12 lines.
我是编程新手,因此不胜感激。
另外,我的编程课程只有大约 3 周的时间,我们还没有真正学习过函数或数组。因此,如果您确实有任何帮助,请避免使用数组和函数。我也理解不从文本文件中读取更容易,但这是我的班级从文本文件中读取它的要求,所以我需要它。
谢谢。