先看示例代码:
#include <cstdio>
#include <iostream>
#include <fstream>
using namespace std;int main() {ifstream ip_file("读取.txt"); // “读取.txt”与代码文件位于同一目录string s;if (ip_file.is_open()) {// 读取txt内容ip_file >> s;// 关闭txtip_file.close();} else {cout << "无法读取硬盘中的学生信息!\n";}cout << s << "\n";return 0;
}
代码的作用是读取读入.txt
文件中以空格隔开的第一段字符串,并输出到终端。
假设读入.txt
中的内容是这样的:
郑州轻工业大学
如果读入.txt
是 UTF-8
编码,那么终端会输出乱码:
閮戝窞杞诲伐涓氬ぇ瀛
如果读入.txt
是 ANSI
编码,那么终端会正确输出,即
郑州轻工业大学
但我也不明白为什么是这样的QAQ