C ++分号分隔文件读取

时间:2015-11-05 17:15:33

标签: c++

我基本上有一个以分号分隔的文本文件,在该文件中有一些命令,如“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;
}

1 个答案:

答案 0 :(得分:0)

我将假设该文件是UTF8格式。如果是这样,那么你的问题是,如何使用c ++读取UTF8文件

这里有人读中文How to read an UTF-8 encoded file containing Chinese characters and output them correctly on console?。您应该能够根据您的语言环境进行调整