рдмрдбрд╝реА рдПрдХреНрд╕реЗрд▓ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ

рдПрдХ рдмрдбрд╝реА рдлрд╛рдЗрд▓ рдХреНрдпрд╛ рд╣реИ? рдЕрдЪреНрдЫрд╛, рдЗрддрдирд╛ рдмрдбрд╝рд╛? рдЬрдм рдореИрдВ рдШрд░ рдкрд░ рдерд╛, рддреЛ рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдпрд╣ 50-60 рд╣рдЬрд╛рд░ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд░рд┐рдХреЙрд░реНрдб рд╡рд╛рд▓реА рдлрд╛рдЗрд▓ рд╣реИред рдФрд░ рдореИрдВ рдЕрдм рддрдХ рдЗрд╕ рдЕрдЬреНрдЮрд╛рдирддрд╛ рдореЗрдВ рд░рд╣реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд░рдиреА рдереА рдЬрд┐рд╕рдореЗрдВ 600-800 рд╣рдЬрд╛рд░ рд▓рд╛рдЗрдиреЛрдВ рдХреА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рдЖрдЯрд╛ рдЪрд▓рдирд╛ - рдХрдЯ рдХреЗ рдиреАрдЪреЗ:



рдкрд╣рд▓реЗ рдХреНрдпрд╛



рдФрд░ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореЗрд░реЗ рджреЛрд╕реНрдд, рд╣рдо рдЙрд╕ рд╕рд░рд▓рддрдо рдЪреАрдЬрд╝ рдореЗрдВ рднрд╛рдЧ рдЧрдП, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдк рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВред Interop.Excell, рдФрд░ рд╕рднреА рдЪреАрдЬреЗрдВред рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ред рд╣рд╛рдБ, schazред рдЬреИрд╕рд╛ рдХрд┐ рдкрд░реАрдХреНрд╖рдг рдкрд░реАрдХреНрд╖рдгреЛрдВ рд╕реЗ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ, рдЦреЛрд▓рдиреЗ рдХреА рдЗрд╕ рдкрджреНрдзрддрд┐ рдиреЗ рдЗрд╕ рддрдереНрдп рдХреЛ рдЬрдиреНрдо рджрд┐рдпрд╛ рдХрд┐ рдПрдХреНрд╕реЗрд▓ рдХреА 200 рд╣рдЬрд╛рд░ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдПрдХ рдШрдВрдЯреЗ рдореЗрдВ рдкрдврд╝рд╛ рдЧрдпрд╛ рдерд╛, рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдиреЗ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рд░реИрдо рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд┐рдпрд╛, рдФрд░ рдорд╢реАрди рдкрд░ рдмрд╛рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдлреИрд▓ рдЧрдпрд╛ред рд╕рдм рдХреБрдЫ рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдЦрддреНрдо рд╣реЛ рдЧрдпрд╛, рд▓реЗрдХрд┐рди рдЦреЛрдЬреА рдкреНрд░рдпреЛрдЧ рдкреВрд░рд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ - 260 рд╣рдЬрд╛рд░ рдкрд░ 4 рдЬреАрдмреА рдХреЗ рд╕рд╛рде рдорд╢реАрди рдкрд░ рдЖрдЙрдЯрдСрдлрдореЗрд░реА рдореЗрдВ рдЖрд╡реЗрджрди рдЧрд┐рд░ рдЧрдпрд╛ред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдорд╛рдереЗ рдореЗрдВ рд╣рд▓ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИ

рдЗрд╕реЗ Google



рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд┐рддрдиреА рд╣реА рдЕрджреНрднреБрдд рдЦреЛрдЬреЗрдВ ... Google рд▓рд╛рдпрд╛, рдЕрдЬреАрдм рддрд░рд╣ рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд, рдПрдордПрд╕рдбреАрдПрди рдХреЗ рд▓рд┐рдП, рдЬрд╣рд╛рдВ рдореБрдЭреЗ рдмрд╣реБрдд рдмрдбрд╝реА рдлрд╛рдЗрд▓реЗрдВ рдЦреЛрд▓рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реБрдЖ: рдбреЛрдо рдФрд░ рдПрд╕рдПрдПрдХреНрд╕ред рдореБрдЭреЗ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдмрдВрдж рд╣реЛ рдЧрдП рдХреНрдпреЛрдВрдХрд┐ рдЖрдЙрдЯрдСрдлрдореЗрд░реА рдЙрд╕ рд╕рдордп рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдШреГрдгрд┐рдд рдерд╛, рдФрд░ рджреВрд╕рд░рд╛ рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдЯреВрдЯ рдерд╛ред рдХреНрдпреЛрдВ - рдиреАрдЪреЗ рдкрдврд╝реЗрдВред

рдХрд┐рд╕ рд╕реЗ, рдХрд┐рд╕ рд╕реЗ



рд╣рдорд╛рд░реЗ рдПрдХреНрд╕реЗрд▓ рдмрдиреЗ рд╣реИрдВред рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд╣рд╕реНрдп рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдЬреЛ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдереЛрдбрд╝рд╛ рдЧрд╣рд░рд╛ рдЦреБрджрд╛рдИ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рдмрд╛рдЗрдирд░реА xls рдХреЗ рд╡рд┐рдкрд░реАрдд, xlsx рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рдЬрд╝рд┐рдк рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣ рд╣реИред рдпрд╣ рд╣реИрдВрдбрд▓ рдХреЗ рд╕рд╛рде рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирдЬрд╝рд┐рдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ - рдФрд░ рд╣рдо рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреА рд╕рдВрдкреВрд░реНрдг рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ, рдЬреЛ xml рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдПрдХ рд╕реЗрдЯ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рд░реВрдЯ xml рдореЗрдВ рдХреЛрдИ рдкрд╛рда рдбреЗрдЯрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ рдЬреЛ рдПрдХ рд╕рд╣рд╛рдпрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреБрдВрдЬреА / рдореВрд▓реНрдп рдЬреЛрдбрд╝реЗ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЙрдкрд░реЛрдХреНрдд рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рде рд╣реА рд╕рд╛рде рдЖрдкрдХреЛ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдЦреБрджрд╛рдИ рдХрд░рдиреЗ рдФрд░ рдЙрдирдХреЗ рд╕рд╛рде рдкрд╛рда рдорд╛рди рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЕрдВрдзреЗрд░реЗред

рдФрд░ рдЕрдВрдзреЗрд░рд╛ рдЫрд╛ рдЧрдпрд╛



рдмрд╣реБрдд рджрд░реНрдж рдФрд░ рджрд░реНрдж рдХреЗ рдмрд╛рдж, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреИрджрд╛ рд╣реБрдЖ рдерд╛:

рд╣рдорд╛рд░реЗ рдкрд╕рдВрджреАрджрд╛ рдЙрдкрдпреЛрдЧ, рдЬрд┐рдиреНрд╣реЗрдВ рдХреБрдЫ рд╡реНрдпрдХреНрддрд┐ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рднреВрд▓ рдЬрд╛рддреЗ рд╣реИрдВ:
using System;
using System.Collections. Generic ;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Linq;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Spreadsheet;


* This source code was highlighted with Source Code Highlighter .
using System;
using System.Collections. Generic ;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Linq;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Spreadsheet;


* This source code was highlighted with Source Code Highlighter .
using System;
using System.Collections. Generic ;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Linq;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Spreadsheet;


* This source code was highlighted with Source Code Highlighter .



рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЛрдб рд╣реА:
public delegate void MessageHave( string message);

public delegate void _DataLoaded( List < string > data);

public delegate void _NewProcent( int col);

public static _DataLoaded DataLoaded;

public static _NewProcent NewProcent;

public static MessageHave MessageHave_Event;

public static void ReadData( object data)
{
// " "-" "
var keyValuePair = (KeyValuePair< string , string >)data;
using ( var cnn = new OleDbConnection( @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +
keyValuePair.Key + @";Extended Properties=" "Excel 12.0;HDR=No;IMEX=1" "" )
)
{
int calc = 1000;
MessageHave_Event( " " );
cnn.Open();
try
{
var cmd = new OleDbCommand( String .Format( "select * from [{0}]" , keyValuePair.Value), cnn);
using (OleDbDataReader dr = cmd.ExecuteReader())
{
var lines = new List < string >();
int id = 0;
if (dr != null )
while (dr.Read())
{
string text = "" ;
for ( int i = 0; i < dr.FieldCount; ++i)
{
if (dr[i] != null )
text += dr[i] + "^" ; //
else
text += "^" ;
}
lines.Add(text);

id++;
if (id == calc)
{
NewProcent(id);
calc += 1000;
}
}
DataLoaded(lines);
}
cnn.Close();
}
catch (Exception ex)
{
MessageHave_Event( "Exception: " + ex.Message);
cnn.Close();
}
}
}


* This source code was highlighted with Source Code Highlighter .
public delegate void MessageHave( string message);

public delegate void _DataLoaded( List < string > data);

public delegate void _NewProcent( int col);

public static _DataLoaded DataLoaded;

public static _NewProcent NewProcent;

public static MessageHave MessageHave_Event;

public static void ReadData( object data)
{
// " "-" "
var keyValuePair = (KeyValuePair< string , string >)data;
using ( var cnn = new OleDbConnection( @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +
keyValuePair.Key + @";Extended Properties=" "Excel 12.0;HDR=No;IMEX=1" "" )
)
{
int calc = 1000;
MessageHave_Event( " " );
cnn.Open();
try
{
var cmd = new OleDbCommand( String .Format( "select * from [{0}]" , keyValuePair.Value), cnn);
using (OleDbDataReader dr = cmd.ExecuteReader())
{
var lines = new List < string >();
int id = 0;
if (dr != null )
while (dr.Read())
{
string text = "" ;
for ( int i = 0; i < dr.FieldCount; ++i)
{
if (dr[i] != null )
text += dr[i] + "^" ; //
else
text += "^" ;
}
lines.Add(text);

id++;
if (id == calc)
{
NewProcent(id);
calc += 1000;
}
}
DataLoaded(lines);
}
cnn.Close();
}
catch (Exception ex)
{
MessageHave_Event( "Exception: " + ex.Message);
cnn.Close();
}
}
}


* This source code was highlighted with Source Code Highlighter .
public delegate void MessageHave( string message);

public delegate void _DataLoaded( List < string > data);

public delegate void _NewProcent( int col);

public static _DataLoaded DataLoaded;

public static _NewProcent NewProcent;

public static MessageHave MessageHave_Event;

public static void ReadData( object data)
{
// " "-" "
var keyValuePair = (KeyValuePair< string , string >)data;
using ( var cnn = new OleDbConnection( @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +
keyValuePair.Key + @";Extended Properties=" "Excel 12.0;HDR=No;IMEX=1" "" )
)
{
int calc = 1000;
MessageHave_Event( " " );
cnn.Open();
try
{
var cmd = new OleDbCommand( String .Format( "select * from [{0}]" , keyValuePair.Value), cnn);
using (OleDbDataReader dr = cmd.ExecuteReader())
{
var lines = new List < string >();
int id = 0;
if (dr != null )
while (dr.Read())
{
string text = "" ;
for ( int i = 0; i < dr.FieldCount; ++i)
{
if (dr[i] != null )
text += dr[i] + "^" ; //
else
text += "^" ;
}
lines.Add(text);

id++;
if (id == calc)
{
NewProcent(id);
calc += 1000;
}
}
DataLoaded(lines);
}
cnn.Close();
}
catch (Exception ex)
{
MessageHave_Event( "Exception: " + ex.Message);
cnn.Close();
}
}
}


* This source code was highlighted with Source Code Highlighter .



рдХреЛрдб рдиреЗ рд░рд┐рдХреЙрд░реНрдбреНрд╕ рдХреА 600-800 рд╣рдЬрд╛рд░ рд▓рд╛рдЗрдиреЛрдВ рдХреА рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рд▓рдЧрднрдЧ 15-20 рдорд┐рдирдЯ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рджрд┐рдЦрд╛рдпрд╛ред

рдпрджрд┐ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд┐рд╕реА рдХреЛ рд╡рдХреНрд░ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ - рдЬреНрдпрд╛рджрд╛ рдХрд┐рдХ рди рдХрд░реЗрдВ :) рдореИрдВ рд╕рднреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╕реБрдиреВрдВрдЧрд╛

Source: https://habr.com/ru/post/In139706/


All Articles