Проблема с кодировкой ASP.net - PullRequest
0 голосов
/ 10 мая 2011

я загружаю файл с ASP.net, который содержит «ä» или «ü», при загрузке на сервере «ä» или «ü» заменяется другим специальным символом. Как я могу решить эту проблему. Та же проблема с обычными текстовыми полями, поэтому я думаю, что это связано с кодировкой.

Может быть, у вас есть решение или идея, было бы неплохо ...: -)

Ответы [ 3 ]

1 голос
/ 10 мая 2011

Скорее всего, проблема с кодировкой.

Вы можете проверить:

  • Правильно ли указан метатег кодирования на странице HTML.
  • Отправляют ли страницы правильную кодировку клиенту (в заголовке HTTP)
  • Являются ли страницы фактически закодированными в правильной кодировке (через VS.NET меню «Файл»), пункт меню «Дополнительные параметры сохранения»).

Чтобы просмотреть заголовки HTTP, используйте, например, расширение ieHttpHeaders для Internet Explorer.

Чтобы изменить отправленную кодировкуиспользуйте тег <globalization> в WEB.CONFIG, чтобы изменить его для всех страниц, или используйте директиву @Page , чтобы определить кодировку ответа для каждой страницы.

0 голосов
/ 10 мая 2011

if (File.Exists (Server.MapPath ("../ App_Data / Karten /") + FileUpload1.PostedFile.FileName.Replace ("ö", "oe"). Replace ("Ö", " э ") Заменить (." A - ") Заменить ( " ") Заменить ( "»," ае ä"," Ae ü", "УП".) Заменить ( "AOE", "Ue")) ) { Label1.Text = "Datei existiert bereits"; } Еще { строка filepath = FileUpload1.PostedFile.FileName; System.Diagnostics.Debug.WriteLine ("Имя файла" + путь к файлу);

        System.Diagnostics.Debug.WriteLine("Filename" + filepath.Replace("ö","oe").Replace("Ö","Oe").Replace("Ö","ae").Replace("ä","Ae").Replace("ü","ue").Replace("Ü","Ue"));
        if (FileUpload1.PostedFile.FileName.ToLower().EndsWith("jpeg") || FileUpload1.PostedFile.FileName.ToLower().EndsWith("jpg"))
        {

        System.Drawing.Image UploadedImage = System.Drawing.Image.FromStream(FileUpload1.PostedFile.InputStream);


            if (UploadedImage == null)
              {
                Label1.Text = "Kein Bild";
                System.IO.File.Delete(Server.MapPath("../App_Data/Karten/") + filepath);
            }
0 голосов
/ 10 мая 2011

поместите следующий код в web.config

<configuration>
  <system.web>
    <globalization
      fileEncoding="utf-8"
      requestEncoding="utf-8"
      responseEncoding="utf-8"
      />
  </system.web>
</configuration>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...