我基本上有一个以分号分隔的文本文件,在该文件中有一些命令,如“A”,“P”,“R”,“S”,以及根据名称“Ali Aksu”等命令处理的输入,MithatKöse“,就像交易”过程,退出“。我有一个程序可以在控制台中处理这些输入而没有任何问题(用户提供输入)。但我需要让它从分号分隔文件中获取输入。这是对阅读的测试:
这是一个示例输入文件:
A;Ali;Aksu;N;2;deposit;withdraw
P
A;Mithat;Köse;P;3;deposit;credit;withdraw
这是控制台上的输出:
A/Ali/Aksu/N/2/deposit/withdraw
P
A/Mithat/Köse/P/3/deposit/credit/withdraw
/
1.问题:它无法读取像“ö”这样的特殊字符 2.问题:为什么从这个奇怪的“”字符开始?
#include <iostream>
#include <fstream>
using namespace std;
int main(){
setlocale(LC_ALL, "Turkish");
fstream myfile;
char *string;
string = new char[50];
myfile.open("input_file.txt",ios::in);
while(!myfile.eof()){
myfile.getline(string, 49, ';');
cout << string << "/";
}
myfile.close();
cout << endl;
system("pause");
return 0;
}
答案 0 :(得分:0)
我将假设该文件是UTF8格式。如果是这样,那么你的问题是,如何使用c ++读取UTF8文件
这里有人读中文How to read an UTF-8 encoded file containing Chinese characters and output them correctly on console?。您应该能够根据您的语言环境进行调整