powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Заархивировать файлы
25 сообщений из 107, страница 3 из 5
Заархивировать файлы
    #38303287
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeДык кто-нибудь ответит? 14454110 способ с винрар обсудили ранее и признали негодным )
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303290
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Яростный МечShSergeДык кто-нибудь ответит? 14454110 способ с винрар обсудили ранее и признали негодным )
Я не про винрар говорил, а просто про рар из коммандной строки.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303291
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Яростный МечAntonariyпропущено...
А чем Response.WriteFile не угодил?он тут не совсем в тему, но насколько я знаю, лучше юзать Response.TransmitFile
Response.TransmitFile - это по сути исправление убогого Response.WriteFile, который грузил файл в память апп сервера. Появился в .NET 2.0.

ShSergeДык кто-нибудь ответит? 14454110
Серж, запускать на сервере приложений какие-то левые exe - зло. Винрар платен. Винрар на сервере зло. А так да, хороший вариант
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303293
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ShSergeЯростный Мечпропущено...
способ с винрар обсудили ранее и признали негодным )
Я не про винрар говорил, а просто про рар из коммандной строки.
А рар - это не винрар? :)
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303302
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2Теперь мне нужно отправить этот файл в FILESTREAM сиквел сервера. Как раз для этих телодвижений используется SqlFileStream. Твои действия?
Очевидно, fileStream.CopyTo(sqlFileStream), который будет читать данные из fileStream в буфер (массив байт, если тебе угодно) и этот буфер записывать в sqlFileStream.

Ааа, это был хитрый план, я понял! Ты сейчас ухватишься за "массив байт" и засчитаешь мне слив, да? Хорошо, я напишу свой Copy:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
public void Copy(Stream source, Stream destination)
{
    int result;
    while((result = source.ReadByte()) != -1)
    {
        destination.WriteByte((byte)result);
    }
}



Это как, потоковая операция или байтовая? Или интовая, может быть?

cooldeveloper2Так вот открою тебе истину: для большинства задач требуется именно работать с байтовыми операциями, а не с потоковыми. Да-да, срыв покровов. Осталось понять, что ты понимаешь под байтовыми операциями, а что под потоковыми. Если сойтись на определении из Вики , то

cooldeveloper2Примеры я приводил: считать / записать файл в базу Неверно. SqlFileStream, о котором ты говорит, это самый что ни наесть потоковый ввод-вывод. cooldeveloper2отправить файл в Response клиенту через Response.BinaryWrite Неверно, есть HttpResponse.OutputStream. cooldeveloper2прочиать аплоад Неверно, есть HttpPostedFile.InputStream или вообще HttpRequest.InputStream cooldeveloper2снять массив байт с устройстваВозможно
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303303
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2ShSergeпропущено...

Я не про винрар говорил, а просто про рар из коммандной строки.
А рар - это не винрар? :)
Это бесплатная штука, которая работает из-под коммандной строки.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303304
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2Antonariycooldeveloper2отправить файл А причем тут файл ? Ни при чем конечно. Файл и файл — вообще ничего общего.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303305
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Яростный Мечно насколько я знаю, лучше юзать Response.TransmitFileОк, приму к сведению.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303314
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2Присаживайся, двойка. Память чиста как девственный лес, имеется только указатель на дескриптор файла.Ты правда не понимаешь или придуриваешься?
Код: c#
1.
2.
3.
4.
5.
var zipMemory = new List<ZipMemory>();
foreach(var file in Directory.GetFiles(@"c:\windows\system32", "*.*"))
    zipMemory.Add(new ZipMemory(file, File.ReadAllBytes(file)));

var zipStream = Create(zipMemory.ToArray());


В памяти будет содержимое каждого файла из c:\windows\system32 плюс сам архив.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303326
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeЭто бесплатная штука, которая работает из-под коммандной строки.
кто разрешил процессы запускать?
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303339
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
НахлобучАаа, это был хитрый план, я понял! Ты сейчас ухватишься за "массив байт" и засчитаешь мне слив, да? Хорошо, я напишу свой Copy
Глупенький, я тебе хочу объяснить на пальцах, что в большинстве задач вполне можно и нужно обходиться обычным байтовым массивом. Ты это уяснил? Далее. CopyTo появился только в WF 4.0, а как же быть FW 3.5 и ниже? Докладываю по существу, SqlFileStream не реализует загрузку данных из потока, разработчики не позаботились. Что и требовалось доказать.

НахлобучЭто как, потоковая операция или байтовая? Или интовая, может быть?
Зачем мне твои интовые операции, если я читаю файл с БД и отправляю его в Response клиенту? Или ты предлагаешь дополнительно его обернуть в MemoryStream и отдать через Response.OutputStream? Уволен без выплаты зарплаты.

НахлобучДа-да, срыв покровов. Осталось понять, что ты понимаешь под байтовыми операциями, а что под потоковыми.
Если у тебя туго с мозгами, что поясню: байтовые операции - это операции с byte[], потоковые - с Stream. Так лучше? До тебя ни у кого вопросов по этому поводу не возникало.

НахлобучНеверно. SqlFileStream, о котором ты говорит, это самый что ни наесть потоковый ввод-вывод
Присаживайся, двойка. У меня есть свой поток Stream, я его хочу загнать в SqlFileStream. Так вот SqlFileStream не поддерживает загрузки данных из потока. Для FW < 4.0. Именно про это я тебе и писал.

Нахлобучcooldeveloper2отправить файл в Response клиенту через Response.BinaryWrite Неверно, есть HttpResponse.OutputStream.
Садись, двойка. Ты предлагаешь читать файл из базы, создавать отдельный поток и отправлять его в OutputStream? Кхе..кхе.

НахлобучНеверно, есть HttpPostedFile.InputStream или вообще HttpRequest.InputStream
Зачем мне нужен поток, если я собираюсь писать пакет байт в БД?
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303342
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилShSergeЭто бесплатная штука, которая работает из-под коммандной строки.
кто разрешил процессы запускать?
Всё, что не запрещено - разрешено.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303346
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariycooldeveloper2пропущено...
А причем тут файл ? Ни при чем конечно. Файл и файл — вообще ничего общего.
Ты выдрал из контекста: 14454143

cooldeveloper2Я кидаю файл в БД и руководствуюсь рекомендациями от MS по размеру блобов.

После того, как файл записан в БД, он перестает быть "файлом". Далее я его читаю как массив байт (тот же EF) и отправляю в Response. Итак, еще раз, причем тут файл?
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303348
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2CopyTo появился только в WF 4.0, а как же быть FW 3.5 и ниже?А кто у нас на каждом углу вопит о переходе на последний фреймворк?
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303351
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нахлобучcooldeveloper2Присаживайся, двойка. Память чиста как девственный лес, имеется только указатель на дескриптор файла.Ты правда не понимаешь или придуриваешься?
Код: c#
1.
2.
3.
4.
5.
var zipMemory = new List<ZipMemory>();
foreach(var file in Directory.GetFiles(@"c:\windows\system32", "*.*"))
    zipMemory.Add(new ZipMemory(file, File.ReadAllBytes(file)));

var zipStream = Create(zipMemory.ToArray());


В памяти будет содержимое каждого файла из c:\windows\system32 плюс сам архив.

Ты головой тронулся? Еще раз смотри реализацию ZipMemory: 14453716
Какой нафик new ZipMemory(file, File.ReadAllBytes(file)) ???

Тебе бы пирожки печь, а не код писать.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303355
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2Далее я его читаю как массив байт (тот же EF) и отправляю в Response.Если бы ты сразу писал грамотно, а не размазывал многозначительные сопли, вопросов бы не было.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303357
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariycooldeveloper2CopyTo появился только в WF 4.0, а как же быть FW 3.5 и ниже?А кто у нас на каждом углу вопит о переходе на последний фреймворк?
Я!

P.S. Коду сто лет, тем он и хорош, т.к. ZipPackage аж с FW 3.0.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303359
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariycooldeveloper2Далее я его читаю как массив байт (тот же EF) и отправляю в Response.Если бы ты сразу писал грамотно, а не размазывал многозначительные сопли, вопросов бы не было.
Ну а я виноват, что ты читаешь с середины, а не с начала дискуссии?
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303363
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2Antonariyпропущено...
Если бы ты сразу писал грамотно, а не размазывал многозначительные сопли, вопросов бы не было.
Ну а я виноват, что ты читаешь с середины, а не с начала дискуссии?Ты виноват в том, что в разных местах одну и ту же сущность называешь по-разному, и хрен поймешь, то ли случайно ошибся, то ли решил целенаправленно сдриснуть с темы.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303369
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyТы виноват в том, что в разных местах одну и ту же сущность называешь по-разному, и хрен поймешь, то ли случайно ошибся, то ли решил целенаправленно сдриснуть с темы.
Для тех, кто учавствует в дискусии, всё понятно. А те, кто пришел сюда чисто жалом водить и ныть, что им ничего не понятно, - в сад!
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303372
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2AntonariyТы виноват в том, что в разных местах одну и ту же сущность называешь по-разному, и хрен поймешь, то ли случайно ошибся, то ли решил целенаправленно сдриснуть с темы.
Для тех, кто учавствует в дискусии, всё понятно. А те, кто пришел сюда чисто жалом водить и ныть, что им ничего не понятно, - в сад! Отмазку галимей сложно представить :)
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303379
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyОтмазку галимей сложно представить :)
Ну а что мне ещё предложить тому, кто читает жопой да ещё и с середины темы? :)
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303383
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2Глупенький, я тебе хочу объяснить на пальцах, что в большинстве задач вполне можно и нужно обходиться обычным байтовым массивом.Если это задачи уровня домашней работы -- то возможно.
cooldeveloper2CopyTo появился только в WF 4.0, а как же быть FW 3.5 и ниже?Самому написать, очевидно. cooldeveloper2Докладываю по существу, SqlFileStream не реализует загрузку данных из потока, разработчики не позаботились. Что и требовалось доказать.Что в твоем понимании "загрузка данных из потока"?

cooldeveloper2НахлобучЭто как, потоковая операция или байтовая? Или интовая, может быть?
Зачем мне твои интовые операции, если я читаю файл с БД и отправляю его в Response клиенту? Или ты предлагаешь дополнительно его обернуть в MemoryStream и отдать через Response.OutputStream? Уволен без выплаты зарплаты.Повторю вопрос: это потоковая опеация или нет?

А я предлагаю в цикле считывать буфер из SqlFileStream и записывать его в OutputStream.

cooldeveloper2Если у тебя туго с мозгами, что поясню: байтовые операции - это операции с byte[], потоковые - с Stream. Так лучше? До тебя ни у кого вопросов по этому поводу не возникало.
stream.CopyTo(anotherStream) -- это какая операция?

cooldeveloper2Присаживайся, двойка. У меня есть свой поток Stream, я его хочу загнать в SqlFileStream. Так вот SqlFileStream не поддерживает загрузки данных из потока. Для FW < 4.0. Именно про это я тебе и писал.Начнем с того, что SqlFileStream в принципе появился только в 4.0. Покажи лучше, как он таки научился загружать данные из потока в .NET 4.0+

cooldeveloper2Садись, двойка. Ты предлагаешь читать файл из базы, создавать отдельный поток и отправлять его в OutputStream? Кхе..кхе.Я писал как я предлагаю. Но могу и повторить -- в цикле считывать буфер из SqlFileStream и записывать его в OutputStream.

cooldeveloper2Зачем мне нужен поток, если я собираюсь писать пакет байт в БД?С точностью до наоборот -- в цикле читаем буфер из InputStream и пишем его в SqlFileStream.

cooldeveloper2Ты головой тронулся? Еще раз смотри реализацию ZipMemory: 14453716
Какой нафик new ZipMemory(file, File.ReadAllBytes(file)) ???

Тебе бы пирожки печь, а не код писать.
Нивапрос,
Код: c#
1.
2.
3.
4.
5.
var zipMemory = new List<ZipMemory>();
foreach(var file in Directory.GetFiles(@"c:\windows\system32", "*.*"))
    zipMemory.Add(new ZipMemory(file, new MemoryStream(File.ReadAllBytes(file))));

var zipStream = Create(zipMemory.ToArray());


Сути дела не меняет -- в памяти по-прежнему будет содержимое каждого файла из c:\windows\system32 плюс сам архив.
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303384
cooldeveloper2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Изопропилушка, алё?

Я всё ещё жду чанкинга для EF.

Поторопись, родненький...
...
Рейтинг: 0 / 0
Заархивировать файлы
    #38303389
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper2AntonariyОтмазку галимей сложно представить :)
Ну а что мне ещё предложить тому, кто читает жопой да ещё и с середины темы? :)Громкое заявление для того, кто жопой пишет
...
Рейтинг: 0 / 0
25 сообщений из 107, страница 3 из 5
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Заархивировать файлы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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