gpt4 book ai didi

c# - 将 StreamReader 转换为流

转载 作者:太空宇宙 更新时间:2023-11-03 18:05:40 25 4
gpt4 key购买 nike

protobuff-net 中的 Deserialize 方法接受一个 Stream 作为参数。在我以前使用 FileStream 并传递它并且它有效之前,但现在我必须使用 StreamReader 因为我正在为 Windows 商店/手机移植应用程序。我收到以下错误:

 error CS1503: Argument 1: cannot convert from 'System.IO.StreamReader' to 'System.IO.Stream'

这也是一个 unity3d 项目,我遇到的另一个错误是:

error CS4028: 'await' requires that the type 'Windows.Foundation.IAsyncOperation<Windows.Storage.StorageFolder>' have a suitable GetAwaiter method. Are you missing a using directive for 'System'?

这很奇怪,因为我将代码包装在 #if NETFX_CORE #endif 中以下是我正在使用的包括:

#if NETFX_CORE

using System.IO;
using System.Threading.Tasks;
using Windows.Storage;
#endif

最佳答案

从逻辑上讲,您不能 - StreamReader 用于文本 数据,而 protobuf 数据是二进制 数据。不清楚从哪里获取 StreamReader,但您应该寻找专为二进制数据设计的 API。

在实践中,您可能能够使用StreamReader.BaseStream获取底层流,但无论如何你都不应该创建一个 StreamReader 来读取非文本数据......并且构建阅读器可能会尝试从流中读取文本数据并提示如果它没有找到...

关于c# - 将 StreamReader 转换为流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31287155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com