Чтение файла в win32
Я программирую mmorpg старой школы в win32 (он должен работать на очень старых машинах), и я хочу прочитать файл, который может быть ASCII или Unicode (редко), и посчитать количество строк в нем. из-за того, что у этих машин очень и очень мало памяти, я не могу хранить в памяти более 4 КБ одновременно.
есть идеи? Спасибо
2 ответа
Читайте файл небольшими порциями за раз, скажем, 1/10 размера вашего бюджета памяти. Подсчитайте конец строки в каждом куске.
Единственная реальная проблема, с которой вы сталкиваетесь, заключается в том, что вам нужно иметь дело с парами cr + lf, которые охватывают конец одного фрагмента и начало следующего.
Кстати, вы имеете в виду 4 МБ, а не 4 КБ?
Просто предложить что-то немного другое...
type foo.txt|find /C /V "~`!@#$%^&*()_+"
Или действительно только следующее, я думаю... было некоторое время
find /C /V "" foo.txt