Читать большой файл байтами и записывать в другой - C#

  1. потехоньку перехожу с дельфи на си диз подскажите как прочитать файл по байтам в массив размером 30 метров. сам делаю чеа лажа какаято непонятно. вот примерчик который получился. он должен прочитать файл и записать в другой файл в качестве промежутка выступает массв


textual

Код к задаче: «Читать большой файл байтами и записывать в другой - C#»

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
 
namespace Обьеденение_файлов
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        int max = 8*1024*1024; // 30МБ 
        byte[] buf1;
        int index = 0;
 
        void ТоФайл()
        {
            //весь каталог прочитан и буфер заполнен! его надо записать в файл
            const string namf = "Date.cab";
            if (File.Exists(namf) == true) ;
            FileStream e2;
            e2 = new FileStream(namf, FileMode.Append, FileAccess.Write);
            e2.Write(buf1, 0, index);
            e2.Flush();
            e2.Close();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            buf1 = new byte[max];
 
            //читаем список файлов
            const string file = "catalog.txt";
            if (File.Exists(file) == false)
            {
                return;
            }
            StreamReader text1 = new StreamReader(file);
            string per1;
            while ((per1 = text1.ReadLine()) != null)
            {
                if (File.Exists(per1))
                {
                    FileStream nf = new FileStream(per1, FileMode.Open);
                    BinaryReader n = new BinaryReader(nf);
                    //byte c;
                    int x = 0;
                    
                    while (nf.Position <= nf.Length)
                    {
                        x++;
                        label1.Text = ToString();
                       
              
                        buf1[inadex] = n.ReadByte();
                        index ++;
                        if (index == max)
                        {
                            ТоФайл();
                            index = 0;
                        }
                    }
                    n.Close();
                    nf.Close();
 
 
                }
            }
            text1.Close();
            MessageBox.Show("OK");
 
        }
    }
}

СДЕЛАЙТЕ РЕПОСТ

8   голосов, оценка 3.500 из 5



Похожие ответы
  1. Здравстуйте, есть документ который состоит из таких вот блоков, необходимо циклом искать по тегу gml:name название и менять у него содержимое тега gml:pos. С XML не работал, но вот всплыла такая задачка, заранее спасибо.XML1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23               37.253520 55.906210                         #iconTemplate                                 Объект: Сервис                                           40000009                 Недвижимость                 454354534534545                

                                         

    ОТКЛЮЧЕН


                            щшщввв
                                        Информация: 06 МОН     от 15 мая 2014г; уауауааууауауаауау&;  

  1. Есть массив int с 33 различными рандомными значениями. Мне понадобилось его сохранить в переменной, выбрал самый простой способ,при котором поочерёдно записывается каждое значение от 0 до 32 и разделяется точкой. Вот пример: 27.11.20.4.28.3.10.8.19.21.1.9.7.31.12.13.0.32.30.23.16.29.25.26.22.18.14.5.17.15.6.2.24 . Нужно написать код, который считывает эти значения и записывает из в массив.

  1. Помогите пожалуйста, мне надо подсчитать количество повторяющихся значений. Например List содержит 1,2,2,1,2,3 мне надо вывести: 2-3раза 1-2раза 3-1раз(слова не обязательно)

  1. Не могу понять как считывать это значение, обведенное красным.

  1. Приветствую. Недавно начал юзать OpenXML сделал все как в справонике https://msdn.microsoft.com/ru-ru/lib.../hh298534.aspx Получилось вот что:

  1. есть какой то TcpClient который отправляет данные на сервак мне нужно эти данные на сервере считать по 4 байта в один большой массив для дальнейшей работы с ним мой код вроде как работает но я ни как не могу записать этот один большой массив

  1. Напишите программу :вводятся целые числа и добавляются в список. Программма должна подсчитать количество нечетных чисел в списке.

  1. как посчитать значение нескольких textbox?

  1. Доброго времени суток,нужна помощь. График строить не требуется. Заранее спасибо.

  1. Фото. Программа позволяет рассчитать стоимость печати фотографии в зависимости от ее размера.