Տուն
Top.Mail.Ru Moscow
Ֆորում: «Գլխավոր»;
Ընթացիկ արխիվը `2002.01.08;
Բեռնել: [xml.tar.bz2];

Down

Ինչպե՞ս կարդալ մեծ ֆայլ ??? Գտնել նմանատիպ մասնաճյուղեր


Art   (2001-12-14 13:09) [0]

Ես պետք է մեծ ֆայլը ամբողջությամբ կարդամ !!!



softland   (2001-12-14 13:15) [1]

Что, файл значительно больше объема RAM?



Vitaly   (2001-12-14 13:19) [2]

Ուրեմն ինչ



Art   (2001-12-14 13:20) [3]

Да нет больше 255 байт ,а в обычную строку тока столько и помещается!!!



MBo   (2001-12-14 13:37) [4]

Конкретизируй вопрос. Что за файл?
В Delphi string=ansistring до 4 Мег (если не стоит {$H-})



Art   (2001-12-14 14:06) [5]

Ну есть файл размер может доходить до 100кб мне надо его считать весь!!



gek   (2001-12-14 14:08) [6]

>> Art
Я что-то не понял куда считывать-то?
100 kb это ерунда



NickBat   (2001-12-14 14:10) [7]

Куда считать, то? И как ты считываешь?



Dimka Maslov   (2001-12-14 14:11) [8]

Դուք հիշողության մեջ բուֆեր եք հատկացնում և դրա մեջ տեղեկատվություն կարդում: Խնդիրներ չկան:



MBo   (2001-12-14 14:11) [9]

yet another Конкретизируй вопрос
если у тебя текстовый файл, который надо читать в одну строку, то так и делай- например, FileStream
Или Stringlist.loadfromfile подойдет?



Polevi   (2001-12-14 16:02) [10]

procedure ReadAnyFile(FileName:string);
էր
fHandle,fmHandle:THANDLE;
fBuffer:Pointer;
FileSize,FileSizeHigh:Cardinal;
սկսել
fHandle:=CreateFile(PChar(FileName),GENERIC_READ or GENERIC_WRITE,
0,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
if fHandle<>INVALID_HANDLE_VALUE then
սկսել
FileSize:=GetFileSize(fHandle,@FileSizeHigh);
if FileSizeHigh=0 then
սկսել
fmHandle:=CreateFileMapping(fHandle,nil,PAGE_READWRITE,0,0,nil);
if (fmHandle<>0) and (GetLastError<>ERROR_ALREADY_EXISTS) then
սկսել
fBuffer:=MapViewOfFile(fmHandle,FILE_MAP_WRITE,0,0,0);
if fBuffer<>nil then
սկսել
//здесь работает с файлом, как с областью памяти по адресу fBuffer
վերջը.
CloseHandle(fmHandle);
վերջը.
վերջը.
CloseHandle(fHandle);
վերջը.
վերջը.



DK   (2001-12-15 03:58) [11]

Если файл текстовый, то можно очень просто сделать так:
1. создаёшь TStringList
2. затем его LoadFromFile
3. считает всё :)



Anatoly Podgoretsky   (2001-12-15 12:11) [12]

MBo © (14.12.01 13: 37)
Length(S) = INTEGER

DK © (15.12.01 03: 58)
Подождем когда нормально задаст вопрос, что бы его можно было понять, ну если не дождем, то значит оно не нужно.



Art   (2001-12-15 17:34) [13]

Задаю вопрос нормально: Задача Считать файл в переменную (полностью,весь файл),файл представляет из себя -обычный текстовый файл ,размер файла может быть и больше 4 мегов.(Теперь нормально???)



Anatoly Podgoretsky   (2001-12-15 18:18) [14]

BlockRead(F,S,N) это один из множества методов



DK   (2001-12-16 02:11) [15]

Ну я и говорю: DK © (15.12.01 03:58)
Сам лично загружал 16 мегов (и это не предел).
Шустро загружает и легко потом работать со строками.



Էջեր: 1 ամբողջ ճյուղը

Ֆորում: «Գլխավոր»;
Ընթացիկ արխիվը `2002.01.08;
Բեռնել: [xml.tar.bz2];

Up









Հիշողություն `0.6 ՄԲ
Ժամանակը `0.059 գ
3-21914
Axel
2001-12-03 18:05
2002.01.08
Հարց `MIDAS- ի վերաբերյալ:


3-21985
Scully
2001-12-06 15:26
2002.01.08
DBGrid- ում ամսաթիվն ու ժամանակը առանց վայրկյան


6-22271
Հաղթանակող
2001-10-04 20:15
2002.01.08
կապի ընթացքում հեռավոր կապ չի եղել:


14-22382
panov
2001-11-08 18:54
2002.01.08
շարունակություն http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1005233643&n=3


6-22281
Verona
2001-10-04 12:22
2002.01.08
Հաղորդագրություններ էլեկտրոնային փոստով ուղարկելու համար





afrikaans ալբանական արաբական հայերեն ադրբեջանական Բասկերի Բելառուսի Բուլղարիայի catalan Չինարեն (պարզեցված) Չինարեն (ավանդական) Խորվաթիայի չեխ դանիերեն հոլանդական Անգլերեն
Էստոնիայի filipino ֆիններեն ֆրանսերեն
galician վրացական գերմանական հունարեն haitian Creole եբրայերեն հինդի հունգարերեն icelandic հայերեն իռլանդական իտալական ճապոնացի Կորեայի Լատվիայի Լիտվայի մակեդոներեն Մալայերեն մալթերեն նորվեգական
պարսկական Լեհաստանի պորտուգալացի ռումինական ռուսական սերբերեն Սլովակիայի Սլովենիայի իսպաներեն սուահիլի շվեդերեն թայերեն թուրքական ուկրաինական ուրդու վիետնամերեն ուելսերեն հայերեն bengali բոսնիերեն
Cebuano Esperanto գուջարաթի հաուսա Hmong Igbo ճավաերեն kannada Khmer Lao լատիներեն մաորի մարաթի մոնղոլական նեպալերեն Punjabi Somali tamil telugu յորուբա
զուլուսերեն
Անգլերեն Французский Немецкий Итальянский Португальский Русский Испанский