Форум: "Начинающим";
Текущий архив: 2006.12.03;
Скачать: [xml.tar.bz2];
ВнизКак записать в файл массив размером 8 точек на миллион Найти похожие ветки
← →
yuraspb © (2006-11-16 16:27) [160]Удалено модератором
← →
Андрей Сенченко © (2006-11-16 16:27) [161]
> Anatoly Podgoretsky © (16.11.06 16:20) [148]
> > Сергей М. (16.11.2006 15:04:45) [105]
>
> Борис ты не прав!
>
> 8 * 1000000 * 6 = 48000000 ~ 50mb
> 8 * 1000000 * 8 = 48000000 = 64mb
Все срочно топтать Подгорецкого ! Наконец то облажался :) Пустячок, а все-же :)
← →
yuraspb © (2006-11-16 16:28) [162]Удалено модератором
← →
Anatoly Podgoretsky © (2006-11-16 16:28) [163]> Сергей М. (16.11.2006 16:25:37) [157]
Тебе тоже не стоит наезжать, из-за тебя я ветку не закрою, есть и другое,
Что не можешь послать подальше без наезда?
← →
Плохиш © (2006-11-16 16:29) [164]
> Андрей Сенченко © (16.11.06 16:27) [161]
Дождался? Деточка.
← →
Anatoly Podgoretsky © (2006-11-16 16:29) [165]> yuraspb (16.11.2006 16:23:34) [154]
Ответ уже давали, повторяться нет смысла. Сам можешь перечитать ветку.
← →
Андрей Сенченко © (2006-11-16 16:29) [166]
> Плохиш © (16.11.06 16:29) [164]
Не а .. случайно напоролся
← →
Anatoly Podgoretsky © (2006-11-16 16:30) [167]> yuraspb (16.11.2006 16:19:27) [147]
Наезжал или нет, это мне решать, совсем необзательно, чтобы наши представления совпадали.
← →
Stanislav © (2006-11-16 16:30) [168]А через TStream неполучится ?
Ты его по частям разбей.
А нафига тебе такой большой массив?
← →
Плохиш © (2006-11-16 16:31) [169]
> Anatoly Podgoretsky © (16.11.06 16:28) [163]
Может стоит в "Потрепаться" отправить?
← →
MikePetrichenko © (2006-11-16 16:31) [170]Я рыдаю...
С просоня это в сам раз.
В который раз. Для тех кто в танке:
Memory Mapped File
Если очень нужны массивы:
array [0..0] of Byte (Integer, Real, Word).
Для обработать и читать FILE_SHARE_READ.
Открыть MSDN и читать до просветления указанные темы.
← →
Anatoly Podgoretsky © (2006-11-16 16:32) [171]> Андрей Сенченко (16.11.2006 16:27:41) [161]
А ты смотри после второго знака равно, может и топтать не придется, а за первый знак равно топтать китайцев!!!
← →
yuraspb © (2006-11-16 16:32) [172]
> Stanislav © (16.11.06 16:30) [168]
> А через TStream неполучится ?
>
> Ты его по частям разбей.
> А нафига тебе такой большой массив?
через TStream не пробовал, такой надо.
← →
Плохиш © (2006-11-16 16:32) [173]
> Плохиш © (16.11.06 16:31) [169]
>
> > Anatoly Podgoretsky © (16.11.06 16:28) [163]
>
> Может стоит в "Потрепаться" отправить?
Хотя нет, после Stanislav © (16.11.06 16:30) [168] можно ещё здесь подержать, посмотреть на результат :-)
← →
Андрей Сенченко © (2006-11-16 16:36) [174]
> Anatoly Podgoretsky © (16.11.06 16:32) [171]
Злой Вы какой-то стали, Анатолий, за те пару лет что я здесь не был. Может Новопасситику предложить ?
*уходит топтать китайцев*
← →
yuraspb © (2006-11-16 16:37) [175]Да тут все какие-то злые
← →
yuraspb © (2006-11-16 16:38) [176]
> Для обработать и читать FILE_SHARE_READ.
Спасибо, пошёл искать в мсдн
← →
Anatoly Podgoretsky © (2006-11-16 16:41) [177]> Андрей Сенченко (16.11.2006 16:29:46) [166]
Все мы случайно напоролись, кто же знал, что здесь мины.
← →
Anatoly Podgoretsky © (2006-11-16 16:41) [178]> Плохиш (16.11.2006 16:31:49) [169]
Рано, вот уже и код стал приводить, только зубы показывает.
← →
Anatoly Podgoretsky © (2006-11-16 16:42) [179]> Андрей Сенченко (16.11.2006 16:36:54) [174]
Устаем
← →
Stanislav © (2006-11-16 16:51) [180]У меня через stream все работает, файл получился 64 мб.
← →
ANB © (2006-11-16 16:51) [181]
> yuraspb © (16.11.06 16:38) [176]
15000 - это евро или баксов ? Я готов за 10000 все сделать.
← →
ANB © (2006-11-16 16:52) [182]
> Я готов за 10000 все сделать
но в евро
← →
ANB © (2006-11-16 16:54) [183]
> Stanislav © (16.11.06 16:51) [180]
> У меня через stream все работает, файл получился 64 мб.
>
Этот балбес до записи в файл и не доходил. Прога падала на входе в процедуру, т.к. он локально объявил слишком здоровый статический массив. А через стрим (как и другими способами) можно без проблем и несколько гигов записать. 64 метра - это не размер.
← →
MikePetrichenko © (2006-11-16 16:57) [184]
> У меня через stream все работает, файл получился 64 мб.
Можно и Stream. Но c Memory Mapped проще потом читать сырые данные из того же файла в который пишем и обрабатывать.
Хотя в данном случае разницы нет.
← →
yuraspb © (2006-11-16 17:11) [185]
> ANB © (16.11.06 16:51) [181]
>
> > yuraspb © (16.11.06 16:38) [176]
>
> 15000 - это евро или баксов ? Я готов за 10000 все сделать.
>
я тебя за бесплатно не возьму
← →
yuraspb © (2006-11-16 17:12) [186]
> Stanislav © (16.11.06 16:51) [180]
> У меня через stream все работает, файл получился 64 мб.
>
Станислав спасибо, поделитесь исходниками )
← →
ANB © (2006-11-16 17:12) [187]
> MikePetrichenko © (16.11.06 16:57) [184]
На хорошем компе стрим кэшируется. можно и писать и читать. а на тормозном эту хрень все равно без толку запускать.
Кроме того MMF штука не сильно простая, вряд ли автор ее одолеет.
← →
Jeer © (2006-11-16 17:18) [188]Мужики, да фигню нам тут вешает автор сабжа.
У него явно попытка производить случайные перестановки в чужом коде, до смысла которого мозг не в состоянии дотянуться и получить работающий результат.
Автору сабжа - начать все с нуля и, прежде всего, с описания режимов работы device.
Намек уже давался - читать порциями из АЦП и скидывать в файл(ы), именуя их по дате/времени.
Более того, практически все современные PCI-ADC имеют внутренний буфер определенного объема, что безусловно позволяет снизить частоту чтения и сброса в файл(ы)
← →
yuraspb © (2006-11-16 17:19) [189]Всем спасибо, Особенно Станиславу, я жду Ваш исходник
← →
Stanislav © (2006-11-16 17:23) [190]yuraspb © (16.11.06 17:19) [189]
Я его не сохранил :-)
Примерно так.
a-массив.
...
Var S:TMemoryStream;
Begin
S:=TMemoryStream.Create;
S.Write (a,Sizeof(a));
S.SaveToFile("MyFile.dat");
S.free;
end;
← →
MikePetrichenko © (2006-11-16 17:25) [191]
> Всем спасибо, Особенно Станиславу, я жду Ваш исходникvar
Data: TFileStream;
AData: Byte; // Seems like device returns byte.
begin
Data := TFileStream.Create(".\data.dat", fmCreate);
While ReadDataFromDevice(AData) do Data.Write(AData);
Data.Free;
end;
Это алгоритм. Полный код - $300
← →
fog (2006-11-16 17:57) [192]Интересно, а frminit.Chart1 резиновый? отрисовать 8*100000 точек в сек.
Все так увлеклись записью на диск, что про это забыли или забили...
← →
Jeer © (2006-11-16 18:06) [193]
> fog (16.11.06 17:57) [192]
Там много веселого.
← →
MikePetrichenko © (2006-11-16 19:34) [194]
> Интересно, а frminit.Chart1 резиновый? отрисовать 8*100000
> точек в сек.
Ага. А девайс выдает 800000 единиц инфы и все. Потом умирает... Что вы так к этому размеру прицепились.
Созранять нудно подряд все. Потом иметь доступ к сохраненным данным.
А отрисовывать "окно" из этих данных.
← →
yuraspb © (2006-11-16 20:13) [195]всё работает )
← →
fog (2006-11-16 20:23) [196]>Что вы так к этому размеру прицепились.
Дело не в размере, хотя он тоже имеет значение :))
>Созранять нудно подряд все.
Согласен на 100 %.
Есть такое понятие - масштаб. => Так ли жизненно необходимо выводить КАЖДУЮ точку? Для примера - любой аудио редактор.
Страницы: 1 2 3 4 5 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.12.03;
Скачать: [xml.tar.bz2];
Память: 0.79 MB
Время: 0.053 c