Содержимое файла в переменную C#

  • Автор темы Автор темы ibred
  • Дата начала Дата начала
Взять текст из файла и положить в переменную - это стандартная операция работы с файлами. Код для этого не нужен - http://zennolab.com/wiki/ru:actions:files
 
понадобилось взять в переменную файл размером более 1 гб..
такое возможно? (требуется пропарсить большую БД мускул, в качестве разовой работы, как бы, т.е. одноразовый шаблон на 1 выполнение)
в настройках ПМ установил 1000 мб, видимо этого мало, больше не дает установить, сбрасывает на 1000..

upload_2017-5-2_1-3-37.png

пробую с помощью этого кода: string text = System.IO.File.ReadAllText(@"C:\111.txt");
в результате в логе ошибка:

upload_2017-5-2_1-5-16.png
 
понадобилось взять в переменную файл размером более 1 гб..
такое возможно? (требуется пропарсить большую БД мускул, в качестве разовой работы, как бы, т.е. одноразовый шаблон на 1 выполнение)
http://zennolab.com/discussion/thre...t-perevarit-ne-podavivshis.36982/#post-275031
 
  • Оценить
Реакции: Sergodjan
Чтобы не плодить темы.
Вот так работает - var path = @"D:\123.jpeg";
Вот так нет - var path = project.Variables["image"].Value; - пишет файл занят другими процессами.
Как мне преобразовать вторую строку в формат первой?
Пытаюсь по разному, одни ошибки.

@"\" + project.Variables["image"].Value - пишет неправильный формат пути
 
Последнее редактирование:
Чтобы не плодить темы.
Вот так работает - var path = @"D:\123.jpeg";
Вот так нет - var path = project.Variables["image"].Value; - пишет файл занят другими процессами.
Как мне преобразовать вторую строку в формат первой?
Пытаюсь по разному, одни ошибки.

@"\" + project.Variables["image"].Value - пишет неправильный формат пути

А в переменной project.Variables["image"].Value что?
 
Чтобы не плодить темы.
Лучше плодить, тем более, что твоя проблема не по теме топика.
var path = project.Variables["image"].Value;
Так правильно, если в переменной полный путь к файлу, например D:\123.jpeg
Если же в переменной только название файла с расширением, то так надо
C#:
Развернуть Свернуть Копировать
var path = @"D:\" + project.Variables["image"].Value;
или
C#:
Развернуть Свернуть Копировать
string path = @"D:\" + project.Variables["image"].Value;
 
  • Оценить
Реакции: Astraport
А в переменной project.Variables["image"].Value что?
Полный путь к картинке.
Понял в чем причина. Нельзя одновременно юзать одно название для исходной картинки и создаваемой.
Код:
Развернуть Свернуть Копировать
FileStream fs = File.OpenWrite(path); //  для записи
byte[] photoBytes = File.ReadAllBytes(path); // для чтения
И как обойти? Создавать новый файл, старый удалять, новый переименовывать?
 
Полный путь к картинке.
Понял в чем причина. Нельзя одновременно юзать одно название для исходной картинки и создаваемой.
Код:
Развернуть Свернуть Копировать
FileStream fs = File.OpenWrite(path); //  для записи
byte[] photoBytes = File.ReadAllBytes(path); // для чтения
И как обойти? Создавать новый файл, старый удалять, новый переименовывать?

В процессе обработки, Вы, по идее должны создавать новый битмап. Вот освобождайте старый и потом сохраняйте туда же новый.
 
  • Оценить
Реакции: Astraport
В процессе обработки, Вы, по идее должны создавать новый битмап. Вот освобождайте старый и потом сохраняйте туда же новый.
Освобождение bitmap ничего не дает, это же не неуправляемый дескриптор. В любом случае есть GC, который успешно справляется со своей задачей. Внутри bitmap есть финализатор, который выполнится в случае, если не указать dispose
 
Последнее редактирование:
  • Оценить
Реакции: Astraport и ZennoScript

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)