Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
7 / 7 / 5
Регистрация: 14.07.2014
Сообщений: 554

Неверная кодировка при отправке данных на сайт

27.02.2015, 17:52. Показов 1159. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообщем целый день угрохал на то чтобы найти почему на сайт отправляет не ту кодировку которую мн надо.
Проблема такая у меня есть пост запрос на сайт и там есть только имя пусть будет Hello-Привет.
В программе все русские символы заменяются на ? тоеть получается Hello-??????
это происходит на стадии отравки на сайт ну и собственно в дб записывается не верно. Как это можно исправить кто может подсказать?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
static void Main(string[] args)
        {
            string test = "Hello-Привет";
 
            ConnectServer("http://" + "localhost" + "/index.php", "Name", test);
 
            Console.ReadKey();
        }
 
        public static string ConnectServer(string Url, params string[] postdata)
        {
            string result = string.Empty;
            string data = string.Empty;
 
            System.Text.ASCIIEncoding ascii = new ASCIIEncoding();
 
            if (postdata.Length % 2 != 0)
            {
                return string.Empty;
            }
 
            for (int i = 0; i < postdata.Length; i += 2)
            {
                data += string.Format("&{0}={1}", postdata[i], postdata[i + 1]);
            }
 
            data = data.Remove(0, 1);
 
            byte[] bytesarr = ascii.GetBytes(data);
            try
            {
                WebRequest request = WebRequest.Create(Url);
 
                request.Method = "POST";
                request.ContentType = "application/x-www-form-urlencoded";
                request.ContentLength = bytesarr.Length;
 
                System.IO.Stream streamwriter = request.GetRequestStream();
                streamwriter.Write(bytesarr, 0, bytesarr.Length);
                streamwriter.Close();
 
                WebResponse response = request.GetResponse();
                streamwriter = response.GetResponseStream();
 
                StreamReader streamread = new StreamReader(streamwriter);
 
                string ServerReturn = streamread.ReadToEnd();
                Console.WriteLine(ServerReturn); // Возвращает Hello-??????
 
                result = streamread.ReadToEnd();
                streamread.Close();
            }
            catch (Exception ex)
            { }
            return result;
        }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.02.2015, 17:52
Ответы с готовыми решениями:

Неверная кодировка при записи в файл
Написал Windows Forms приложение на C# Но имеется проблема с кодировкой. Нужно чтобы русские символы тоже сохранял. Не знаю как...

Неверная кодировка при записи в БД
В базе данных стоит тип данных nvarchar(200), если записать кирилицу прямо через Management Studio русские буквы работают как нужно, когда...

Неверная кодировка в ComboBox при отображении записи из БД
Здравствуйте, пожалуйста подскажите как решить проблему с ?несовпадением кодировок может быть? работаю с базой данных mysql...

4
Эксперт .NETАвтор FAQ
 Аватар для Storm23
10427 / 5157 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
27.02.2015, 17:59
В ASCII нет других алфавитов кроме латиницы.
Вам нужно использовать либо ANSI (Encoding.Default либо Encoding.GetEncoding("1251")) либо Unicode (Encoding.UTF8).
0
7 / 7 / 5
Регистрация: 14.07.2014
Сообщений: 554
27.02.2015, 18:04  [ТС]
Вот с этим не могу разобраться можно ли пример как это можно сделать?
0
Эксперт .NETАвтор FAQ
 Аватар для Storm23
10427 / 5157 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
27.02.2015, 18:09
Bo0m21,
C#
1
byte[] bytesarr = Encoding.GetEncoding(1251).GetBytes(data);
Добавлено через 1 минуту
Только в методе POST еще желательно указать явно какую кодировку вы используете, и в StreamReader тоже.
0
7 / 7 / 5
Регистрация: 14.07.2014
Сообщений: 554
27.02.2015, 18:49  [ТС]
Нет все равно возвращает знаки вопроса

C#
1
byte[] bytesarr = Encoding.UTF8.GetBytes(data);
Вот так вот пишет русские спасибо за помощь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.02.2015, 18:49
Помогаю со студенческими работами здесь

Неверная кодировка казахских букв
using System; using System.Text; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object...

Экспорт данных в csv файл. Неверная кодировка
Здравствуйте ребята! Помогите! Есть у меня List&lt;string&gt; данных, записываю эти данные в .CSV файл и открываю этот файл с помощью Excel....

Неверная кодировка при выводе на консоль
Добрый день. Немножко не понятен момент в моем тренировочном коде. using System; using System.IO; class demo { ...

Неверная кодировка при записи в файл
Пишу программу, которая данные из формы заносит в dbf-файл по нажатию кнопки. Код кнопки такой такой: str = textBox1.Text; ...

Неверная кодировка при чтении файла
Какой-то бред, где можно почитать про кодировки и drag&amp;drop... this.ldad.DragEnter += new DragEventHandler...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru