В каком объекте мне следует хранить много строк? [дубликат]C#

Место общения программистов C#
Ответить
Anonymous
 В каком объекте мне следует хранить много строк? [дубликат]

Сообщение Anonymous »

У меня есть процесс, в ходе которого я должен (де)токенизировать информацию о платежном счете. В настоящее время при отправке клиенту файла с платежной информацией (помимо прочего) фактические номера платежных счетов токенизируются, и перед отправкой клиенту его необходимо детокенизировать.
Существующее процесс загружает файл в память, просматривает его построчно, детокенизирует поля платежного счета (если находит), а затем добавляет его во внутреннюю переменную StringBuilder. В конце, когда файл был обработан, эта переменная преобразуется в массив байтов, загружается в поток памяти и отправляется по SFTP клиенту. По сути, мы ни в коем случае не храним файл с открытым текстом (нетокенизированные учетные записи) на сервере. Платежные счета в виде открытого текста существуют только в памяти, а затем отправляются клиенту.
Проблема возникает иногда, когда файлы слишком велики, StringBuilder не хватает памяти, и мы не можем для обработки файла.
Вопрос: есть ли лучший способ загрузить и обработать большие объемы строк в памяти, используя другой объект? Может быть, List?
Я сразу же подумывал об использовании байтового массива, поскольку мы все равно используем его для загрузки в поток памяти, но он должен иметь определенный размер, а я не знаете, как его получить (функция, которая детокенизирует его, не обращается напрямую к исходному файлу, она использует собственный объект с уже заполненной информацией).
Спасибо

Подробнее здесь: https://stackoverflow.com/questions/791 ... strings-in
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»