I have written a simple code to count the number of different character in a text.This is the code below:
#include <iostream>
#include <fstream>
#include <map>
using namespace std;
const char* filename="text.txt";
int main()
{
map<char,int> dict;
fstream f(filename);
char ch;
while (f.get(ch))
{
if(!f.eof())
cout<<ch;
if (!dict[ch])
dict[ch]=0;
dict[ch]++;
}
f.close();
cout<<endl;
for (auto it=dict.begin();it!=dict.end();it++)
{
cout<<(*it).first<<":\t"<<(*it).second<<endl;
}
system("pause");
}
The program did well in counting ascii character,but it could not work in Unicode character like chinese character.How to solve the problem if I want it able to work in Unicode character?