m0_65699050 2022-12-26 20:22 采纳率: 80%
浏览 22
已结题

c++读文件的一个简洁的问题

####问题背景:
读文件的时候发现第一个字符是空的;

img

img

img


代码:

//读取ToBeTran.txt
    ifstream ifs;
    ifs.open("ToBeTran.txt", ios_base::in);
    if (!ifs.is_open()) 
        cout << "文件ori.txt打开失败" << endl;
    char s[1000];
    cout << "文件类容:";
    while (ifs>>s) { cout << s; }
    cout << endl;
    ifs.close();

    for (int i = 0; i < 10; ++i)
        cout << "s["<<i<<"]="<<s[i] << endl;

###尝试。
吧while后面的{}删掉后可以输出s[0]=a;
但是 判断s[0]==a 时会返回false
在文件里a前面加入空格也没用。

  • 写回答

1条回答 默认 最新

  • ShowMeAI 2022-12-26 20:42
    关注

    望采纳

    你的代码中使用了 ifs>>s 这种方式来读取文件中的内容,这种方式会自动忽略开头的空白符(如空格、回车、制表符等)。如果想要读取文件中所有的字符,包括空白符,可以使用 getline 函数。

    string line;
    while (getline(ifs, line)) {
        cout << line;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月3日
  • 已采纳回答 12月26日
  • 创建了问题 12月26日

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题