Мне интересно, пока он читает поток из файла, можете ли вы сказать ему, чтобы он брал только x строк? Скажем, если вам нужно 100 строк из файла, можете ли вы указать, чтобы он брал только первые 100 строк (игнорируя первую строку, поскольку это будет заголовок). Даже если в файле 200 строк?
FileHelpers берут ограничения?
comment
С почти 7k вы должны хотя бы знать, как пометить вопрос. Какой язык, платформа? Из ваших комментариев я вижу, что это С#, но сделайте нам всем одолжение и пометьте его как таковой.
- person leppie   schedule 02.02.2012
comment
Если вы прочитаете тег filehelper, вы увидите, что это библиотека .net, написанная на C#.
- person chobo2   schedule 02.02.2012
Ответы (2)
Вы можете использовать FileHelperAsyncEngine, который обрабатывает записи одну за другой.
FileHelperAsyncEngine engine = new FileHelperAsyncEngine(typeof(Customer));
engine.BeginReadFile("TestIn.txt");
int recordCount = 0;
foreach (Customer cust in engine)
{
// your code here
Console.WriteLine(cust.Name);
recordCount++;
if (recordCount > 100)
break; // stop processing
}
engine.Close();
person
shamp00
schedule
02.02.2012
«Файловый поток» не имеет «строк».
Некоторые устройства позволяют вам «искать» (переходить к определенному, случайному смещению в файле). Это, безусловно, может сэкономить ваше время. Но если файл не имеет фиксированного формата, вы не можете точно знать, какое смещение в байтах соответствует какой логической строке.
В: О какой платформе, языке программирования и типе файла вы говорите?
person
paulsm4
schedule
02.02.2012
Под этим я имел в виду, что пока он читает поток, он создает его в объекты (одна строка == один объект). Поэтому, пока он это делает, я подумал, может быть, вы можете сказать ему остановиться после того, как он создал так много объектов. Filehelpers - это библиотека .net (я использую С#)
- person chobo2; 02.02.2012