您好我有以下代码,无法理解为什么它没有读取文件! 我做错了什么?虽然.txt文件是用数据编写的,但目录是正确的。
#include <string>
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
int main() {
vector<string> v;
ifstream in("E:\vector.txt");
string line;
while(getline(in, line))
v.push_back(line); // Add the line to the end
// Add line numbers:
cout<<"v.size()="<<v.size();
for(int i = 0; i < v.size(); i++)
cout << i << ": " << v[i] << endl;
return 0;
}
答案 0 :(得分:4)
ifstream in("E:\vector.txt");
糟糕!这不会打开E:\vector.txt
。反斜杠在字符串文字中引入转义序列。我不知道"\v"
是什么,但不是字符\
后跟字符v
。
你需要逃避反斜杠。
ifstream in("E:\\vector.txt");
答案 1 :(得分:0)
ifstream in("E:\vector.txt");
应该是
ifstream in("E:\\vector.txt");
您也可以将其用作
in.open ("E:\\vector.txt", std::ifstream::in);