Конверктировать переменную в koi8-r

  • Автор темы Автор темы bedl0
  • Дата начала Дата начала

bedl0

Client
Регистрация
07.12.2012
Сообщения
245
Реакции
59
Баллы
28
Подскажите пожалуйста как по средством C# сниппета конверктировать переменную в кодироваку
koi8-r
 
Текстовик из списка, у него кодировка UTF8 от туда берем строку, ложим в переменную, и вот эту переменную нужно конверктунть в koi8-r.
На деле иэто выгялдит примерно так UTF-8(Привет медвед) to koi8-r = оПХБЕР ЛЕДБЕД
 
Код:
Развернуть Свернуть Копировать
byte[] utfBytes = Encoding.UTF8.GetBytes(project.Variables["source"].Value);
byte[] koi8rBytes = Encoding.Convert(Encoding.UTF8, Encoding.GetEncoding("KOI8-R"), utfBytes);
var koi8rString = Encoding.GetEncoding("KOI8-R").GetString(koi8rBytes);

koi8rString - в переменной данные в кодировке KOI8-R
 
byte[] utfBytes = Encoding.UTF8.GetBytes(project.Variables["keyword"].Value);
byte[] koi8rBytes = Encoding.Convert(Encoding.UTF8, Encoding.GetEncoding("KOI8-R"), utfBytes);
var koi8rString = Encoding.GetEncoding("KOI8-R").GetString(koi8rBytes);
return koi8rString;

Возвращает туже строку что и на входе, без перекодирования. В переменной keyword положил слово Проверка, на выходи после выполнения кода туже строку и получил, в новую переменую. или я чтото не так делаю ?


04cf3cac3be772bc0cbcc7d4995419f5.png
 
Последнее редактирование:
Есть решени, конечно не то чего хотелосьбы, но костыль работает. http://zennolab.com/discussion/threads/kodirovka-dannyx-v-post.14746/#post-92439
Можно еще укоротить код сделалв его вот таким.
1.php

<?php $keyword = iconv('windows-1251', 'UTF-8', $_GET['key']);echo $keyword; ?>

Передавать параметр key вот таким способом.
1.php?key=Просто порно)
Спасибо gs517

Но решение на C# все еще разыскивается.
 
Мужики подыму тему, очень актуальнонужно. Может есть у кого решение на C#
 
В общем, решение которое дал iDnx оказалось самое верное, за что ему спасибо). Немного нужно было всего подправить под себя а именно в моем случае работает вот так:

Код:
Развернуть Свернуть Копировать
byte[] utfBytes = Encoding.UTF8.GetBytes(project.Variables["keyword"].Value);
byte[] koi8rBytes = Encoding.Convert(Encoding.UTF8, Encoding.GetEncoding("windows-1251"), utfBytes);
var koi8rString = Encoding.GetEncoding("koi8-r").GetString(koi8rBytes);
return koi8rString;
 
  • Оценить
Реакции: alekwuy, GreenWay и iDnx

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