Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8963717
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 15, 20262026-06-15T16:25:11+00:00 2026-06-15T16:25:11+00:00

I have a C++ code snippet that uses MultiByteToWideChar to convert UTF-8 string to

  • 0

I have a C++ code snippet that uses MultiByteToWideChar to convert UTF-8 string to UTF-16

For C++, if input is “Hôtel”, the output is “Hôtel” which is correct

For C#, if input is “Hôtel”, the output is “Hôtel” which is not correct.

The C# code to convert from UTF8 to UTF16 looks like

Encoding.Unicode.GetString(
            Encoding.Convert(
                Encoding.UTF8,
                Encoding.Unicode,
                Encoding.UTF8.GetBytes(utf8)));

In C++ the conversion code looks like

MultiByteToWideChar(
    CP_UTF8,            // convert from UTF-8
    0,                  // default flags
    utf8.data(),        // source UTF-8 string
    utf8.length(),      // length (in chars) of source UTF-8 string
    &utf16[0],          // destination buffer
    utf16.length()      // size of destination buffer, in wchar_t's
    )

I want to have the same results in C# that I am getting in C++. Is there anything wrong with the C# code ?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-15T16:25:12+00:00Added an answer on June 15, 2026 at 4:25 pm

    It appears you want to treat string characters as Windows-1252 (Often mislabeled as ANSI) code points, and have those code points decoded as UTF-8 bytes, where Windows-1252 code point == UTF-8 byte value.

    The reason the accepted answer doesn’t work is that it treats the string characters as unicode code points, rather than
    Windows-1252. It can get away with most characters because Windows-1252 maps them exactly the same as unicode, but input with characters
    like –, €, ™, ‘, ’, ”, • etc.. will fail because Windows-1252 maps those differently than unicode in this sense.

    So what you want is simply this:

    public static string doWeirdMapping(string arg)
    {
        Encoding w1252 = Encoding.GetEncoding(1252);
        return Encoding.UTF8.GetString(w1252.GetBytes(arg));
    }
    

    Then:

    Console.WriteLine(doWeirdMapping("Hôtel")); //prints Hôtel
    Console.WriteLine(doWeirdMapping("HVOLSVÖLLUR")); //prints HVOLSVÖLLUR
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have the following code snippet which uses'event' My fellow developers argue that the
I have got a code snippet that uses IOleObjects and calls the method SetClientSite.
I have those code snippet that checks the fans table and gets everyone who
I have following code snippet that i use to compile class at the run
I have this code snippet inside a function that checks if an object exists
I have code that adds a pre-determined HTML snippet into a pre-determined <div> element
I have a snippet of code that creates an array clusterUniqueMarkers that stores all
I have a cool snippet of code that works well, except one thing. The
In an Activity, I have some snippet of code that fires off a Message:
We have an older site which still uses the ancient gat Analytics tracking code

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.