Чтение куска данных из файла

Блог 09 января 2014

Теги: C#,программирование,оптимизация и продвижение сайтов

На одном совещании потенциальный подрядчик гордо заявил: - Клиенты присылают нам нечеловеческие эксемельки, и ничего, справляемся.
Маркетолог: - Я не поняла.
- Очень большие файлы.
Через некоторое время и у нас возникла проблема с разбором.

Пришлось изготовить утилиту для чтения куска данных. Работы на 15 минут. Создаем консольное приложение на C#.
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using 

System.Configuration;

namespace ReadFilePart
{
    class Program
    {
        static void Main(string[] args)
        {
            try



            {
                //считать управляющие параметры
                //входной файл
                string fpath = 

ConfigurationManager.AppSettings["PATH"];
                //выходной файл
                string fpathOut = ConfigurationManager.AppSettings["PATHOUT"];


                //размер куска
                int MSIZE = int.Parse(ConfigurationManager.AppSettings["MSIZE"]);
                //стартовая позиция
 

               int START = int.Parse(ConfigurationManager.AppSettings["START"]);

                //открыть поток чтения входного файла
                

FileStream fs = new FileStream(fpath, FileMode.Open);
                //определить размер данных 
                int len = (int)fs.Length;
                

if (len > MSIZE)
                    len = MSIZE;
                byte[] bs = new byte[len];
                //считать часть данных
                

fs.Read(bs, START, len);

                //открыть поток записи выходного файла
                FileStream fsOut = new FileStream(fpathOut, 

FileMode.Create);
                //записать данные
                fsOut.Write(bs, 0, len);
                //закрыть потоки
                fs.Close

();
                fsOut.Close();
            }
            catch (Exception ex)
            {
                //показать ошибку
                

Console.WriteLine(ex.ToString());
                Console.ReadKey();
            }
        }
    }
}
Пример конфигурационного файла.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key=

"PATH" value="c:	empym.xml"/>
    <add key="PATHOUT" value="c:	empym1.xml"/>
    <add key="MSIZE" value="100000"/>
    <add key=

"START" value="0"/>
  </appSettings>
</configuration>

Комментарии

Комментариев еще нет.
Добавить комментарий могут только авторизованные пользователи. Авторизоваться
Комментарий

Оценка





Авторизоваться через https://www.pvobr.ru
Логин
Пароль
Регистрация

Авторизоваться через соцсети
Наверх

оптимизация и продвижение сайтов

про дистанционное обучение   образование дистанционно москва   университет дистанционного образования   курсы повышения   создание интернет магазина быстро   услуги программиста   разработка официальных сайтов   разработка интернет магазина   сайт дистанционного обучения   система дистанционного обучения   обучающий портал   сео аудит сайта   сео оптимизация