Как узнать количество строк в текстовом CSV файле на 4 Гб?

1. fixin 4259 14.10.23 20:03 Сейчас в теме
Notepad++ падает - не хватает памяти.
Word выдает 300.000, хотя на самом деле там больше
Командная строка тоже выдает 300.000.
Думаю, там 88 млн строк.
Прикрепленные файлы:
Вознаграждение за ответ
Показать полностью
Найденные решения
7. gybson 15.10.23 13:10 Сейчас в теме +0.2 $m
ИмяФайла = "ПутьКФайлу";	
ЧтениеТекста = Новый ЧтениеТекста(ИмяФайла);
Сч = 0;
Пока ЧтениеТекста.ПрочитатьСтроку()<>Неопределено Цикл
	Сч = Сч + 1;
КонецЦикла;
Сообщить(Сч);
Показать
user1936667; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. independ 1538 14.10.23 20:24 Сейчас в теме
(1)https://ru.wikipedia.org/wiki/Wc
powershell

$filePath = "C:\YourFilePath\YourFile.txt"

# Step 2: Read the file content
$fileContent = Get-Content -Path $filePath

# Step 3: Measure the line count
$lineCount = ($fileContent | Measure-Object -Line).Lines

# Step 4: Display the result
Write-Host "Number of lines in $filePath: $lineCount"
Показать
11. fixin 4259 15.10.23 14:46 Сейчас в теме
(2) что-то похожее я делал на PS, так он виснет на таком файле.
5. user1936667 15.10.23 10:37 Сейчас в теме
(1) Выкладывай файл, посчитаем.
3. redfred 14.10.23 21:06 Сейчас в теме
$LinesInFile = 0
$reader = New-Object IO.StreamReader "C:\YourFilePath\YourFile.txt"
while($reader.ReadLine() -ne $null){ $LinesInFile++ }
Write-Host $LinesInfile
10. fixin 4259 15.10.23 14:46 Сейчас в теме
(3) и куда это вставлять? в Power Shell?
12. redfred 15.10.23 14:48 Сейчас в теме
4. XAKEP 15.10.23 07:36 Сейчас в теме
gippoedit
это когда ++ падал,
гиппопотам открыл за секунды !
14. fixin 4259 15.10.23 15:00 Сейчас в теме
(4) скачал отсюда https://www.hippoedit.com/
Хватило только на 55 Млн строк, до конца не прочитал, при этом он съел 3 Гб памяти...
Прикрепленные файлы:
6. user1852218 15.10.23 11:50 Сейчас в теме
Учитывая опыт участия в прошлой ветке автора, лично я от советов воздержусь. А другим рекомендую к просмотру: https://www.youtube.com/watch?v=McjF7e7UUCg
7. gybson 15.10.23 13:10 Сейчас в теме +0.2 $m
ИмяФайла = "ПутьКФайлу";	
ЧтениеТекста = Новый ЧтениеТекста(ИмяФайла);
Сч = 0;
Пока ЧтениеТекста.ПрочитатьСтроку()<>Неопределено Цикл
	Сч = Сч + 1;
КонецЦикла;
Сообщить(Сч);
Показать
user1936667; +1 Ответить
8. user1936667 15.10.23 14:17 Сейчас в теме
(7)
Новый ЧтениеТекста
Давненько гения 1С так в 1С носом не макали...
15. user856012 13 15.10.23 15:11 Сейчас в теме
(8)
Давненько гения 1С так в 1С носом не макали...
А куда еще его макать? В PowerShit? Так он и так уже там по самые... гениалии.
9. fixin 4259 15.10.23 14:45 Сейчас в теме
(7) я бы тогда использовал потоковое чтение, а не ЧтениеТекста. Благо, оно в 1С есть.
Но не хочу писать код, может что готовое есть из программ (текстовых вьюверов)?
В Total Commander вьювер показывает файл, но не показывает номера строк.
13. gybson 15.10.23 14:52 Сейчас в теме
(9) Чтение текста и есть потоковое. Код не надо писать, он уже написан. Надо скопировать текст в обработку или консоль выполнения кода.
fixin; user1936667; +2 Ответить
17. fixin 4259 15.10.23 15:13 Сейчас в теме
(13) а да, ЧтениеТекста - потоковое, ТекстовыйДокумент - нет.
ОК. Меня подвел мой перфекционизм, хотел уже обработку для подсчета длины писать, а можно было в консоли прогнать.
Посчитал: 86 494 460
Посчитал минут за 5.
18. user1936667 15.10.23 15:20 Сейчас в теме
(9)
Но не хочу писать код
(17)
хотел уже обработку для подсчета длины писать

Как же, однако, классно за подобными гениальными выворачиваниями-то наблюдать.
16. user1936667 15.10.23 15:13 Сейчас в теме
(9)
я бы тогда использовал потоковое чтение, а не ЧтениеТекста
Вот уж воистину, молчал бы наш гений - сошел бы за умного.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот