how to change source file encoding in csharp proje

2019-01-09 00:35发布

问题:

Is there a way to force VS to use Unicode always, instead of weird ISO-something?

I'm working on a winapp csproject using Visual Studio 2008 on Vista (Polish locale). The problem appears when I build the project on Win Server 2003 (English locale) - then Polish diacritic is gone.

I investigated that the issue is caused by improper source file encoding. It looks that source files aren't using UTF-8 encoding.

回答1:

Problem: Compiler launched from command line cannot process the source file because of international characters that I’ve just added.

Solution: Save source file explicitly in UTF-8 encoding to preserve international characters.

How To:

  • open the problematic file in Visual Studio.
  • on the File menu click “Advanced Save Options“
  • from “Encoding” combo select “Unicode (UTF-8 …“
  • click OK.

You’re set. Commit to please the build server and rest of the team waiting for green.



回答2:

In the latest Visual Studio 2017 the interface is changed a bit and you have to chose File -> Save [filename] As…. Then in the opened dialog you can chose Save with Encoding….



回答3:

I've had the same problems with VS2015 vb.net project and solved it by adding <CodePage>1250</CodePage> marker to your vbproj/csproj file. I did it after <SchemaVersion> marker, rebuilt the project and it worked for me. I've had trouble with polish letters such as ż,ą etc. You can also try the UTF-8 - 65001 but I didn't check if it works.