Zrobiłem narzędzie w Delphi, aby stworzyć tęczowy stół. To było w porządku, dopóki plik nie zwiększył rozmiaru do 3,1 GB. Zamknąłem swój program. Potem otworzył je ponownie i to wywala podczas wykonywania tego kodu:Delphi Pascal - jak zapisać dane do pliku większego niż 2 GB?
Assign(RainbowFile,'Rainbow_table.txt'); {assign a text file}
Append(RainbowFile);
Delphi pokazuje błąd „podniesione klasy expection EInOutError z komunikatem«I/O error 131» Moje pytanie. Jak dodać dane do istniejącego pliku większego niż 2 GB // Przestarzałe Następne pytanie:. mam obecnie kod:..
Content_to_file := (#13+#10+Start_string+':'+hexstr(GTA_San_Andreas_CRC32(Start_string), 8));
RainbowFile_handle.WriteBuffer(Content_to_file[1], Length(Content_to_file)*SizeOf(Char));
Jak pozbyć zmiennej Content_to_file chcę umieścić go bezpośrednio do WriteBuffer jeśli `s możliwe
EDYTOWANIE:
TFileStream działa z plikami o wielkości powyżej 2 GB. Przetestowałem to teraz. Jednak możliwe jest napisać tak:
RainbowFile_handle.WriteBuffer(Start_string[1]+':',
Znaczy przekazać żadnej zmiennej argumentu. Czy mam zdecydowanie przekazać pierwszy znak zmiennej?
EDIT 2:
Mam aktualnie wykonane to w ten sposób:
Content_to_file := (#13+#10+Start_string+':'+hexstr(GTA_San_Andreas_CRC32(Start_string), 8));
RainbowFile_handle.WriteBuffer(Content_to_file[1], Length(Content_to_file)*SizeOf(Char));
to możliwe, aby to zrobić bez tej zmiennej?
Czy twój system plików obsługuje pliki> 2 GB? – Satya
Tak, robi. Mam 32-bitowy system Windows XP. Obecnie plik ma 3,1 GB na mojej partycji NTFS. Problem dotyczy mojego kodu paskowego. – fastman92