UWP не будет компилировать GetBufferFromString в примере Microsoft для FileIO.WriteBufferAsync - PullRequest
0 голосов
/ 28 февраля 2019

Я пытаюсь использовать WriteBufferAsync в примере Microsoft для FileIO.WriteBufferAsync , но GetBufferFromString не компилируется.

В конечном счете, я хочу записать байтовый буфер в абсолютный файлпуть.

Это копия из примера ...

try
{
    if (file != null)
    {
        IBuffer buffer = GetBufferFromString("Swift as a shadow");
        await FileIO.WriteBufferAsync(file, buffer);
        // Perform additional tasks after file is written
    }
}
// Handle errors with catch blocks
catch (FileNotFoundException)
{
    // For example, handle file not found
}

1 Ответ

0 голосов
/ 01 марта 2019

GetBufferFromString не компилируется.

@ Комментарии Раймонда Чена очень убедительны.И он является автором официального образца кода UWP.Причина, по которой GetBufferFromString не может быть скомпилирована, заключается в том, что вы не объявили ее.

private IBuffer GetBufferFromString(String str)
{
    using (InMemoryRandomAccessStream memoryStream = new InMemoryRandomAccessStream())
    {
        using (DataWriter dataWriter = new DataWriter(memoryStream))
        {
            dataWriter.WriteString(str);
            return dataWriter.DetachBuffer();
        }
    }
}

Я хочу записать буфер байтов в абсолютный путь к файлу.

Для записи буфера в абсолютный путь к файлу вы можете использовать метод PathIO.WriteBufferAsync.Обратите внимание, вам нужно убедиться, что ваш файл может быть доступен в UWP.например, если ваш файл хранится в библиотеке изображений, вам нужно добавить возможность изображения.для более подробной информации см. UWP Права доступа к файлу .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...