Перезапись файла: одна строка больше максимального размера переменной. Обходной путь?

Мне нужно заменить одну строку в файле. Как правило, этот код работает нормально:

(Фактическая специфика того, что делает этот блок, не является необходимой для этого вопроса).

for /F "tokens=1* delims=:" %%a in ('findstr /N "^" %DATA%') do (
    if %%a equ %TargetLine% (
        echo !insert!>>%filepath%cc.tmp
    ) else (
        if [%%b]==[] (echo.>>%filepath%cc.tmp) else (echo %%b>>%filepath%cc.tmp)
    )
)

К сожалению, каждая строка присваивается %% a, которая, как и любая другая переменная, может хранить только максимальную длину в 8 192 символа (спасибо dbenham за этот tidbid, теперь используется).

Итак, какие варианты у меня есть, когда длина строки превышает 8 192 символа (в данном случае 23 708)?

Прежде чем вы спросите: «Нет, его нельзя разделить новой строкой, это массив JSON размером 10 КБ, закодированный в Base64, который затем записывается в ByteArray.

Я предполагаю, что путь состоит в использовании регулярных выражений, это правильное предположение или есть другой обходной путь?

Благодарю.

Ответы на вопрос(3)

Ваш ответ на вопрос