Понимание asp-classic charset и литерального управления строкой в случае включения
Как вы можете ожидать, я имею дело с устаревшим веб-приложением, которое использует в основном кодировку Windows-1252.
Я также написал небольшой набор библиотек, среди которых есть акценты. Эти файлы находятся в UTF-8 и включены в устаревший код. И вот я здесь:
.------------..-----------------. | UTF-8 | | Windows-1252 | | ------------ | | ----------------- | | Дим ул | <------- включение -------- | Дим стр2 | | str = "é" | | str2 = "è" | | ____________ | | _________________ |
Это звучит как str2
будет обрабатываться так, как будто "è"
был закодирован как UTF-8, хотя это не так.
Я знаю, что не-ASCII литералы не должны быть написаны в коде, но это наследие. Более того, я признаю, что на самом деле не хочу понижать версию конвертирования файлов UTF-8 до Windows-1252. Также я ищу чистый способ сообщить движку правильную кодировку строковых литералов, прежде чем преобразовать их во внутреннее представление. Response.Codepage
не кажется уместным или работает. Есть ли другой способ решить эту проблему, не превращая новые файлы в кодировку Windows-1252?