powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как конвертироват из String в
6 сообщений из 6, страница 1 из 1
Как конвертироват из String в
    #39213346
Dimmf28
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как конвертироват из String в System.Data.SqlTypes.SQlbytes?
...
Рейтинг: 0 / 0
Как конвертироват из String в
    #39213391
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что конвертировать-то? Пример данных приведите.
...
Рейтинг: 0 / 0
Как конвертироват из String в
    #39213471
Dimmf28
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Ну вот такие значения у меня в String a ="0xECBDE9721C47B", хочу их переделать в System.Data.SqlTypes.SQlbytes, так из за того что использовать хочу вот эту функцию.

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
[Microsoft.SqlServer.Server.SqlFunction(IsDeterministic = true, IsPrecise = true,
        DataAccess = DataAccessKind.None)]
public static SqlBytes BinaryDecompress(SqlBytes input)
{
    if (input.IsNull)
        return SqlBytes.Null;
    
    int batchSize = 32768;
    byte[] buf = new byte[batchSize];

    using (MemoryStream result = new MemoryStream())
    {
        using (DeflateStream deflateStream = 
            new DeflateStream(input.Stream, CompressionMode.Decompress, true))
        {
            int bytesRead;
            while ((bytesRead = deflateStream.Read(buf, 0, batchSize)) > 0)
                result.Write(buf, 0, bytesRead);
        }
        return new SqlBytes(result.ToArray());
    } 
}
...
Рейтинг: 0 / 0
Как конвертироват из String в
    #39213503
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimmf28,
У тебя 16тиричное число, как ты представляешь его конвертацию в массив байт? Откуда взял вообще его?
...
Рейтинг: 0 / 0
Как конвертироват из String в
    #39213516
Dimmf28
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВ,

начну сначала чтоли у меня есть в БД MS SQL SERVER поле с типом XML , мне надо на сервере уменьшить размер XML , для этого использую CLR что подгружает функцию с C# вот она вот такая :

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
/// <summary>
/// Compressing the data
/// </summary>
[Microsoft.SqlServer.Server.SqlFunction(IsDeterministic = true, IsPrecise = true,
        DataAccess = DataAccessKind.None)]
public static SqlBytes BinaryCompress(SqlBytes input)
{
    if (input.IsNull)
        return SqlBytes.Null;

    using (MemoryStream result = new MemoryStream())
    {
        using (DeflateStream deflateStream = 
            new DeflateStream(result, CompressionMode.Compress, true))
        {
            deflateStream.Write(input.Buffer, 0, input.Buffer.Length);
            deflateStream.Flush();
            deflateStream.Close();
        }
        return new SqlBytes(result.ToArray());
    } 
}



далее у меня получаються сжатые данные вот их вид какой как на картинке

далее у меня как бы есть функция вот эта что ниже для переобразования в базе назад в несжатый вид, но мне такое не подходит так как на клиентской машине есть только С# надо там написать декомпресию что будет использовать только текст, текс по сути и есть то что у меня на рисунке.

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
[Microsoft.SqlServer.Server.SqlFunction(IsDeterministic = true, IsPrecise = true,
        DataAccess = DataAccessKind.None)]
public static SqlBytes BinaryDecompress(SqlBytes input)
{
    if (input.IsNull)
        return SqlBytes.Null;
    
    int batchSize = 32768;
    byte[] buf = new byte[batchSize];

    using (MemoryStream result = new MemoryStream())
    {
        using (DeflateStream deflateStream = 
            new DeflateStream(input.Stream, CompressionMode.Decompress, true))
        {
            int bytesRead;
            while ((bytesRead = deflateStream.Read(buf, 0, batchSize)) > 0)
                result.Write(buf, 0, bytesRead);
        }
        return new SqlBytes(result.ToArray());
    } 
}
...
Рейтинг: 0 / 0
Как конвертироват из String в
    #39213601
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimmf28,
В таком случае у тебя в поле массив байт, ничего никуда преобразовывать не нужно. Читай и используй.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как конвертироват из String в
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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