Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Общие вопросы по .NET и C# > массив байт |
Автор: Machaon 3.4.2012, 10:46 | ||
Имеется массив байт
Так вот этот массив заполняется из буфера сокета но если буфер сокета меньше чем размер массива то все остальное место заполняется пустыми байтами. Вопрос каким методом можно организовать заполнение так чтобы пустые байты не записывались в массив. |
Автор: VirusUZ 3.4.2012, 10:58 | ||
|
Автор: Machaon 3.4.2012, 18:51 |
Здесь как я понимаю чтение идет из файла и запись также идет в файл но никакой обработки на пустые байты я ну никак ни магу разглядеть |
Автор: Machaon 3.4.2012, 19:11 | ||
Проще говоря мне нужно понять как массив размером к примеру 1000байт
заполнить текстом чтобы в массиве хранилось только нужные мне данные к примеру: в массив из 1000байт записываем текст преобразованный в байты допустим слово "винград" (слово винград в массиве будет находиться в байтах но я оставлю для наглядности его в стринговом значении) Соответственно слово "винград" займет к примеру 14байт и в массиве из 1000 байтов будет выглядеть так: винград0000000000000000000000000000000000000........ Мне же нужно оставить в массиве только те байты которые не пустые то есть чтобы в массиве хранились только байты стрингового значения а именно: винград Replace и всякие другие способы я пробовал работает но мне нужно знать как наиболее правильно подойти к этому вопросу чтобы в подобных ситуациях с ним больше не сталкиваться и получить наиболее рационально решение чем писать целую функцию когда можно обойтись одной строчкой. |
Автор: golfV 4.4.2012, 01:20 | ||
|
Автор: erm0l0v 4.4.2012, 09:32 |
Да как написал golfV избавиться от пустых байт можно только создав массив из 14 байт. По другому никак в этом и суть массивов, если создали массив из 1000 байт то он и в памяти будет занимать место для 1000 байт))) |
Автор: Machaon 4.4.2012, 22:09 | ||
Спасибо все работает но не могли бы вы мне объяснить вот эту строчку поподробнее:
|
Автор: Machaon 5.4.2012, 00:07 |
Вопрос решен ответ был найден http://msdn.microsoft.com/ru-ru/library/bb534804.aspx. |