Witam. Od niedawna piszę w C++, do tej pory cały czas pisałem w Delphi. No i mam taki oto problem. Muszę do comboboxa wczytać zawartość pliku txt. Wszystko ładnie pięknie tylko że po wczytaniu zamiast polskich znaków mam przysłowiowe krzaczki. Szukałem już tutaj na forum i u wujka google ale nie mogłem nic znaleźć, nic dopasować do mojego kodu. Pracuje w Visual c++ 2010 Express.
Oto kod całej procedury:
std::fstream plik;
String^ S = Application::StartupPath + "\\info.txt";
char* S1 = (char*)System::Runtime::InteropServices::Marshal:: StringToHGlobalAnsi(S).ToPointer();
plik.open(S1, std::ios::in);
if( plik.good() == true )
{
std::string p;
getline( plik,p );
while (p != "")
{
ComboBox1->Items->Add(ToSysString(p));
getline( plik,p );
}
plik.close();
}
Dodatkowo daje kod funkcji konwertującej std::string na System::String^ użytej w powyższej procedurze
System::String^ ToSysString(std::string source)
{
System::String^ result;
int len = (int)source.length();
for(int i=0; i<len; i++)
result += (wchar_t)source[i];
return result;
}
Z góry dziękuje za pomoc