Как определить строковый литерал, содержащий не-ASCII символы? - PullRequest
0 голосов
/ 19 мая 2010

Я программирую в VB.NET, используя Visual Studio 2008. Мне нужно определить строковый литерал, содержащий символ "÷", эквивалентный Chr (247).Я понимаю, что внутренне VS использует кодировку UTF-16, но когда исходный файл записывается на диск, он содержит одно байтовое значение F7 для этого символа.

Этот исходный файл обрабатывается другой программой, использующей UTF-8.кодирование по умолчанию, поэтому он не может правильно интерпретировать этот символ, пытаясь объединить его со следующим однобайтовым символом.Какая кодировка будет правильно интерпретировать один байт F7 как один символ ÷?

В качестве альтернативы, есть ли способ выражения не-ASCII-литерала, который использует только символы ASCII - например, с использованием некоторой escape-последовательности?

1 Ответ

3 голосов
/ 19 мая 2010

ну, я всегда думал, что по умолчанию VS использует UTF-8 для сохранения файлов. Но ÷ F7 в кодировке ISO 8859-1. Если вам этого недостаточно, перейдите сюда: как изменить кодировку исходного файла в проекте csharp (visual studio / msbuild machine)?

...