powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / кодирование base64
10 сообщений из 10, страница 1 из 1
кодирование base64
    #32925566
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как проще сделать кодирование base64
...
Рейтинг: 0 / 0
кодирование base64
    #32925570
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно что-то типа функции: urlencode()
...
Рейтинг: 0 / 0
кодирование base64
    #32925813
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
документация на что, почему тут не читают?
В док. по NET Framework сделать поиск по Base64:

найдутся методы XmlTextReader.ReadBase64 и XmlWriter.WriteBase64

несмотря на название, они не специально для XML, а для кодирования-декодирования массива байтов.

Ещё найдутся функции для строк:
Convert.FromBase64CharArray
Convert.ToBase64String

по моему испытанию, функция Convert.FromBase64CharArray работала не так хорошо, как XmlTextReader.ReadBase64 - в очень редких случаях давала ошибку конвертирования, когда та работала. Но это для конвертирования из ase64.
Изучать самостоятельно.
...
Рейтинг: 0 / 0
кодирование base64
    #32925851
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня нашлось только MailEncoding Enumeration

все равно спасибо
...
Рейтинг: 0 / 0
кодирование base64
    #32925940
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня документация по NET Framework 1.1, но эти классы были и в 1.0 (т.е. с самого начала), хотя версией 1.0 уже нет смысла пользоваться. Если так не ищется, то искать в оглавлении по этим названиям, которые я написал:


глава Reference -> Class Library ->System.Xml -> XmlWriter -> XmlWriter methods -> WriteBase64 method


Reference -> Class Library -> System -> Convert class -> Conver class members -> methods -> ToBase64CharArray method

остальные функции тоже там поблизости.
...
Рейтинг: 0 / 0
кодирование base64
    #32926000
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
классы и функции-то нашел, а вот перекодировать что-то не получается
...
Рейтинг: 0 / 0
кодирование base64
    #32926038
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот мой код,
может я что-то не то делаю?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
		char bt = 'a';
		string b64 = "";
		if ( ch.Length> 0  )
		{
			byte bb =  Convert.ToByte(bt);
			byte[] ba = new byte[ 2 ];
			ba[ 0 ] = bb;
			b64 = Convert.ToBase64String( ba );
		}

...
Рейтинг: 0 / 0
кодирование base64
    #32926092
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вариант 2
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
	byte[] buf = new byte[ 4 ];

	StringWriter sw = new StringWriter();				
	sw.Write(ch);
	XmlTextWriter tw = new XmlTextWriter( sw );
	tw.WriteBase64(buf, 0 ,  4 );
				
	sw.Close();
	tw.Close();

как теперь из buf вытащить перекодированное значение???
...
Рейтинг: 0 / 0
кодирование base64
    #32926689
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
	byte[] buffer = new byte[ 4 ];
	StringWriter sw = new  StringWriter();
	sw.Write( ch );

	XmlTextWriter xw = new XmlTextWriter( sw );
	xw.WriteBase64(buffer,  0 ,   2 );
	xw.Close();
	sw.Close();
	string b64 = Convert.ToString(buffer);

выдает: System.Byte[]
что яделаю не так?
...
Рейтинг: 0 / 0
кодирование base64
    #32928241
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
string b64 = Convert.ToString(buffer);

чего-то неохота думать, как культурно сделать это преобразование (если не брать байты из буфера , преобразовывать в char и добавлять в StringBuilder).

Но тут вообще дефект:
string состоит из двухбайтовых символов UNICODE, а Base64 - однобайтовая кодировка, т.е. добавятся лишние байты. Потом XmlReader сможет прочитать такую строку и декодировать из Base64, но другую функцию декодирования ещё надо будет проверить.
Т.е.
1) не преобразовывать буфер в строку (если результат нужно выводить в файл)
2)Или для преобразования в Base64 использовать функцию Convert.ToBase64String, получая строку.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / кодирование base64
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]