UWP不会在Microsoft示例中为FileIO.WriteBufferAsync

时间:2019-02-28 20:36:04

标签: visual-studio uwp

我正在尝试在Microsoft example for FileIO.WriteBufferAsync中使用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 :(得分:0)

  

GetBufferFromString无法编译。

@Raymond Chen的评论非常令人信服。他是UWP官方代码示例的作者。无法Rust Playground进行编译的原因是您尚未声明。

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

我想将字节缓冲区写入绝对文件路径。

要向绝对文件路径写入缓冲区,可以使用GetBufferFromString方法。请注意,您需要确保可以在uwp中访问您的文件。例如,如果您的文件存储在图片库中,则需要添加图片功能。有关更多详细信息,请参阅UWP PathIO.WriteBufferAsync