C++ 将字符串对象的向量输出到文件

C++ 将字符串对象的向量输出到文件,c++,string,vector,ofstream,C++,String,Vector,Ofstream,我试图将字符串对象的向量输出到文件中。然而,我的代码只是 输出每个字符串的前两个元素 下面这段代码写道: 1 一, 归档。而不是: 2009年7月1日 2010年7月1日 这正是我需要的 ofstream file("dates.out"); vector<string> Test(2); Test[0] = "01-Jul-09"; Test[1] = "01-Jul-10"; for(unsigned int i=0; i<Test.size(); i++)

我试图将字符串对象的向量输出到文件中。然而,我的代码只是 输出每个字符串的前两个元素

下面这段代码写道:

1
一,

归档。而不是:

2009年7月1日
2010年7月1日

这正是我需要的

ofstream file("dates.out");  

vector<string> Test(2); 

Test[0] = "01-Jul-09"; 
Test[1] = "01-Jul-10"; 

for(unsigned int i=0; i<Test.size(); i++)    
     file << Test[i] << endl;

file.close();
流文件(“dates.out”)的
;
病媒试验(2);
测试[0]=“09年7月1日”;
测试[1]=“2010年7月1日”;

对于(unsigned int i=0;i,以下代码按预期工作:

marcelo@macbookpro-1:~/play$ cat dateout.cc
#include <iostream>
#include <fstream>
#include <vector>
#include <string>

using namespace std;

int main()
{
  ofstream file("dates.out");

  vector<string> Test(2);

  Test[0] = "01-Jul-09";
  Test[1] = "01-Jul-10";

  for(unsigned int i=0; i<Test.size(); i++)
    file << Test[i] << endl;
  file.close();
}
marcelo@macbookpro-1:~/play$ make dateout && ./dateout
g++     dateout.cc   -o dateout
marcelo@macbookpro-1:~/play$ cat dates.out 
01-Jul-09
01-Jul-10
marcelo@macbookpro-1:~/play$ 
marcelo@macbookpro-1:~/play$cat dateout.cc
#包括
#包括
#包括
#包括
使用名称空间std;
int main()
{
流文件(“dates.out”);
病媒试验(2);
测试[0]=“09年7月1日”;
测试[1]=“2010年7月1日”;

对于已经观察到的(unsigned int i=0;i,代码看起来很好,因此:

  • 程序运行后,您是否查看了正确的
    日期。out
    ?您是否验证了正在查看的文件上的日期/时间,以确保它不是以前的数据
  • 您是否有写入文件的权限?可能您的程序无法覆盖现有数据
  • 您向我们展示了所有重要的代码吗?我们还需要了解其他函数调用吗?Marcelo/ereOn答案中的代码是否产生了与您的问题相同的问题
  • 您确定正在运行您认为是的二进制文件吗?(可能存在路径问题)

这是您的准确代码吗?此代码不应产生您所说的输出。无需修改即可为我工作。您能否发布完整的迷你程序(
#包括
s和所有内容)这显示了问题吗?代码看起来不错,你做了正确的<代码>包含了< /Cord>之类的吗?“黑暗STAR1:不管你在想什么语言,都不是C++。你可能想验证你没有多余的TyBufff。使用STD::vector,STD::String,和STD::OFFROW,而不是向量、字符串和OFFASH。看起来可能。如果您使用的是一个意外类型,碰巧有一个运算符,那么我发现问题出在哪里:代码很好。问题是由于另一个应用程序(Matlab)造成的它使用dates.out文件,需要不同的格式。谢谢您的帮助!一个相关的问题是我正在输出字符串,如:file
\\n
将文本
\n
放入文件中。