Закодировать текст (windows-1251)

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113
Есть фраза: пирожокиклубничка
Мне необходимо её закодировать так, чтобы на выходе получилось:
%EF%E8%F0%EE%E6%EE%EA%E8%EA%EB%F3%E1%ED%E8%F7%EA%E0

А у меня получается:
%D0%BF%D0%B8%D1%80%D0%BE%D0%B6%D0%BE%D0%BA%D0%B8%D0%BA%D0%BB%D1%83%D0%B1%D0%BD%D0%B8%D1%87%D0%BA%D0%B0

Использую:
Код:
return Uri.EscapeUriString(project.Variables["text"].Value);
Поиском пользовался, но к сожалению ничего не нашел.
 
Последнее редактирование:

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113
Решение таки найдено:
Код:
return HttpUtility.UrlEncode(str, Encoding.GetEncoding(1251));
 
Последнее редактирование:

смм24

Client
Регистрация
05.07.2017
Сообщения
76
Благодарностей
10
Баллы
8
Решение таки найдено:
Код:
return HttpUtility.UrlEncode(str, Encoding.GetEncoding(1251));
Компиляция кода Ошибка в действии "CS0103" "Имя "HttpUtility" отсутствует в текущем контексте". [Строка: 1; Cтолбец: 8]
return System.Net.WebUtility.UrlEncode(str); работает, но кодирует только в utf-8, на разных пк пробывал тоже самое. Помогите, пожалуйста. Очень нужно
 

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113
Компиляция кода Ошибка в действии "CS0103" "Имя "HttpUtility" отсутствует в текущем контексте". [Строка: 1; Cтолбец: 8]
return System.Net.WebUtility.UrlEncode(str); работает, но кодирует только в utf-8, на разных пк пробывал тоже самое. Помогите, пожалуйста. Очень нужно
Нужно добавить System.Web.dll в GAC, а так же using System.Web; в "Директивы using и общий код"
 
  • Спасибо
Реакции: intagens и ftbwork10

смм24

Client
Регистрация
05.07.2017
Сообщения
76
Благодарностей
10
Баллы
8
Нужно добавить System.Web.dll в GAC, а так же using System.Web; в "Директивы using и общий код"
Работает спасибо, только нужно еще полученный результат в заглавные перевести
Код:
string text= HttpUtility.UrlEncode(project.Profile.Name, Encoding.GetEncoding(1251));
text = text.ToUpper();
return text;
 

intagens

Client
Регистрация
28.09.2015
Сообщения
209
Благодарностей
31
Баллы
28
Нужно добавить System.Web.dll в GAC, а так же using System.Web; в "Директивы using и общий код"
@ibred подскажи, пожалуйста ... возникает ошибка "CS0103" "Имя "HttpUtility" отсутствует в текущем контексте" . Библиотека добавлена. Юзинги прописаны. Есть несколько шаблонов, которые отлично работают с этой библиотекой. А один шаблон не хочет. В чем может быть причина? Куда копать?)
 

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 518
Благодарностей
3 370
Баллы
113
@ibred подскажи, пожалуйста ... возникает ошибка "CS0103" "Имя "HttpUtility" отсутствует в текущем контексте" . Библиотека добавлена. Юзинги прописаны. Есть несколько шаблонов, которые отлично работают с этой библиотекой. А один шаблон не хочет. В чем может быть причина? Куда копать?)
C#:
return System.Web.HttpUtility.UrlEncode("текст", Encoding.GetEncoding(1251));
System.Web 4.0.0 в gac.
 
  • Спасибо
Реакции: intagens

intagens

Client
Регистрация
28.09.2015
Сообщения
209
Благодарностей
31
Баллы
28
Библиотека добавлена.
1573793296279.png
Юзинги прописаны.
44367


если в сниппете пишу HttpUtility.UrlEncode получаю ошибку "CS0103" "Имя "HttpUtility" отсутствует в текущем контексте"

если пишу System.Web.HttpUtility.UrlEncode получаю "CS0234" "Имя типа или пространства имен "HttpUtility" отсутствует в пространстве имен "System.Web" (пропущена ссылка на сборку?)"

если переношу сниппет в другой шаблон - все работает

зенку перезагружал, если что)
 

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 788
Благодарностей
2 453
Баллы
113
Сейчас в Зеннопостере "с коробки" есть методы:
Код:
Macros.TextProcessing.UrlEncode("пирожокиклубничка");
Код:
Macros.TextProcessing.UrlDecode("%EF%E8%F0%EE%E6%EE%EA%E8%EA%EB%F3%E1%ED%E8%F7%EA%E0 ");
Должны решать эту же проблему без использования библиотек.
 
  • Спасибо
Реакции: intagens

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 518
Благодарностей
3 370
Баллы
113

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 788
Благодарностей
2 453
Баллы
113
Это urlencode, а метод выше меняет кодировку на русскую ANSI.
Да, действительно, так и есть.
Я не внимательно прочитал тему - думал что речь об обычном UrlEncode/UrlDecode которые уже реализованы в Зеннопостере - но ошибся.
 

intagens

Client
Регистрация
28.09.2015
Сообщения
209
Благодарностей
31
Баллы
28
Я не внимательно прочитал тему
похоже, что я, тоже, не внимательно прочитал тему) у меня не работала конструкция return HttpUtility.UrlEncode(string); причем, не работала только в одном отдельно взятом шаблоне, а в остальных работал

вобщем, почему не работает return HttpUtility.UrlEncode(string); я так и не разобрался, но Ваше подсказка помогла)

спасибо)
 

смм24

Client
Регистрация
05.07.2017
Сообщения
76
Благодарностей
10
Баллы
8
похоже, что я, тоже, не внимательно прочитал тему) у меня не работала конструкция return HttpUtility.UrlEncode(string); причем, не работала только в одном отдельно взятом шаблоне, а в остальных работал

вобщем, почему не работает return HttpUtility.UrlEncode(string); я так и не разобрался, но Ваше подсказка помогла)

спасибо)
System.Web версию попробуй изменить.
 

intagens

Client
Регистрация
28.09.2015
Сообщения
209
Благодарностей
31
Баллы
28

смм24

Client
Регистрация
05.07.2017
Сообщения
76
Благодарностей
10
Баллы
8
пробовал) и 4.0.0 и 2.0.0 ... и для 32 и для 64) весь прикол в том, что в нескольких других шаблонах все работает, а в одном не хочет))
У меня было подобное, это может быть из за того что шаблон много раз исправлялся. попробуй создать новый проект и туда кубики скопируй. Если не получится, значит не совместимость.
 
  • Спасибо
Реакции: intagens

Ильдар boom

Новичок
Регистрация
17.11.2019
Сообщения
4
Благодарностей
0
Баллы
1
Нужна помощь есть кто разбирается в PMTA? Или кто пишет скрипты индивидуальные,кто понимает http://joxi.ru/RmzG1ojcYoPBy2 в этих папках?
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)