Имитация файла в потоке из строки

158
20 ноября 2018, 23:00

Может быть вы можете помочь или натолкнуть на правильное понимание вопроса.

Есть строка (обычный String), содержащая в себе json-образную инфу: {"elemMain": 2, "Content": {"type": "general", "import": "False"}}"

Возможно ли её поместить в Stream (MemoryStream/FileStream/...) имитируя файл? Т.е. чтобы поток считал эту инфу файлом с конкретным названием (например, informer.json), но при этом сам файл на диске не создавался/не искался.

Answer 1

Вы можете записать вашу строку в MemoryStream и потом считать её оттуда. Вот пример

var str = "my awesome string";
using(var stream = new MemoryStream())
{
    // Запишем строку в поток
    var bytes = Encoding.Default.GetBytes(str);
    stream.Write(bytes, 0, bytes.Length);
    // сдвинем позицию потока в начало
    stream.Position = 0;
    // далее можно работать с потоком
    var buffer = new byte[100];
    var bytesRead = stream.Read(buffer, 0, buffer.Length);
    var strRead = Encoding.Default.GetString(buffer, 0, bytesRead);
    Console.WriteLine(strRead);
}

Вывод

my awesome string
READ ALSO
ACF как вывести метаданные рубрики?

ACF как вывести метаданные рубрики?

У меня на сайте Wordpress установлен плагин ACFЯ создал поля для рубрик и ввел туда данные

159
Выборка и филтрация товара Symfony 4, Elasticseach, MySQL

Выборка и филтрация товара Symfony 4, Elasticseach, MySQL

Всем доброго времени суток! Есть задача: реализовать поисковый фильтр для выборки товара по характеристикам из базы данныхТоваров около...

168
PHP библиотека авторизации через соц. сети

PHP библиотека авторизации через соц. сети

Подскажите пожалуйста библиотеку для авторизации на сайте через социальные сетиКонкретно интересуют Вконтакте, Одноклассники, Facebook

155
НЕ работает авторизация PHP

НЕ работает авторизация PHP

Постоянно выводит Логин или пароль не верны! Подскажите что не так

151