xml в csv через стрим, и соответственно из-за того, что я не вижу весь xml разом, я не могу сразу же первой строкой зааппендить хедер в финальный csv, потому что хэдер я буду знать только когда пройдусь по всему xml.
Можно ли как-то добавить данные в начало файла, не читая заново весь получившийся csv без хедера?
неа( относительно недавно где-то решали вопрос «а как в начало файла докинуть текс» - ответ - никак, не прочитав не получится так что придется по 2му круг стримить уже сам csv из временного файла в новый, в котором сначала пропишешь(по пути сбора в 1м прогоне) хэдеры, а потом уже и собранный контент
https://nodejs.org/api/fs.html#fscreatewritestreampath-options имеется опция start, https://nodejs.org/api/fs.html#fscreatereadstreampath-options имеются опции start и end
хмм, спасибо я чет упустил из виду наличие start…
Ну так стримы же, как без этого 💁♂️
угу я вспомнил, там обсуждение было про fs.writeFile ане стримы чет даже не подумал сразу пнуть в направлении стримов, ибо «оверхед, а нам надо в относительно нежирный файл периодически писать, да и оптимизации сильной особо не надо, подождем»
Попробую, спасибо за наводку. На самом деле, выглядит подозрительно, должен быть какой-то подвох (надеюсь нет). Потому что когда я в ходе поисков всегда натыкался на инфу что препенд файла невозможен
Файла - хм, через ноду не приходилось, может и невозможно. Можно через bash, но команду не помню. Подвох - возможно, что при использовании start будут перезаписаны данные по этой позиции, но это не точно. В общем, проверяй аккуратно.
то, что выше я и ответил собсна) но при стриминге видать возможен… пни если попробуешь)
там в комменте написано, что флаг надо проставить на r+ (но я думал эт на чтение, крч надо освежить память по дескрипторам и и/о) >Modifying a file rather than replacing it may require the flags option to be set to r+ rather than the default w
Да, например echo -e "prepend string $(cat file.txt)" > file.txt Но по сути это переписать файл заново
Прочитать файл и записать в tmp Прочитать заголовок и записать файл Стримом дописать из tmp в файл
Обсуждают сегодня