I want to output a text to a file via two pointers that I have declared:
wchar_t *Col1="dsffsd", *Col2="sdfsf";
Here is what I have tried:
std::ofstream fout;
fout.open(NativeDatabasePathHist);
fout<<"testing";
fout<<" "<<Col1<<" "<<Col2;
fout.close();
And here is what I am getting:
testing 113 113
Why is it that when I print Col1
and Col2
, I am getting numbers instead of strings?
We can see that to make wide character we have to add 'L' before the character literal. But the character value is not displayed in the output using cout. So to use wide char we have to use wcout, and for taking input we have to use wcin. We can make some wide character array, and print them as string.
std::wfstreamA set of internal flags that affect how certain input/output operations are interpreted or generated.
First, use std::wofstream
instead of std::ofstream
.
Also, use the L
prefix on your text string to indicate that your text is wide character text:
wchar_t *Col1=L"dsffsd"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With