123YYD
2018-12-12 08:19
采纳率: 44.4%
浏览 647

c++ 文件读写操作在读.cpp文件时出现错误(学习中。。。。。。。。)

c++ 文件读写操作在读.cpp文件时出现错误

// Fillvector.cpp: 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <string>
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;


int main()
{
    //vector<string> v;
    //ifstream in("121.txt");//遇到一个问题无法读取内存
    //string line;
    //while (getline(in,line))
    //{
    //  v.push_back(line);//add the line to the end
    //}
    ////add line numbers
    //for (unsigned int i = 0; i < v.size();i++)
    //{
    //  cout << i << ": " << v[i] << endl;
    //}
    //in.close();
    vector<string> v;
    ifstream in("Fillvector.cpp");//遇到一个问题无法读取内存
    string line;
    while (getline(in, line))
    {
        v.push_back(line);//add the line to the end
    }
    //add line numbers
    for (unsigned int i = 0; i < v.size(); i++)
    {
        cout << i << ": " << v[i] << endl;
    }
    in.close();



    cin.clear();
    cin.sync();
    cin.get();
}


图片说明图片说明

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 白色一大坨 2018-12-12 08:27
    已采纳

    我试过你的程序了,程序是没问题的,那么问题应该出在文件上,你的Fillvector.cpp是放在工程读取的路径内了吗,你这个表现是没有正确读取到文件造成的。
    我自己建了Fillvector.cpp文件,里面写了5行数,可以读出如图所示:

    图片说明

    你的文件我也读到了,当然有点乱码,是文件的问题:
    图片说明
    调整一下文件为ansi编码,读出来中文也没问题了:
    图片说明

    我系统有点bug不能回复人,你要是实在没办法,留个联系方式,我发给你就是,你说一下你是哪个编译器

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 123YYD 2018-12-12 08:41

    图片说明
    我这也是在一起啊,要不然什么都读不到啊!
    图片说明
    我试了一下换了个路径,我真的没招了
    图片说明
    我换了个txt文件就可以,但是我把.cpp文件改成txt文件就不行

    评论
    解决 无用
    打赏 举报