C++ 将 stringstream 转换为 ifstream?
C++ Convert stringstream into ifstream?
我正在使用两段代码,
第一个 class 使用 AAssetManager(Android NDK 对象)读取“资产”并将其内容保存到单个字符串中。然后它将字符串转换为字符串流并对其进行解析。
第二个class解析类型ifstream,必须与文件关联。
有没有什么方法可以将字符串或字符串流转换为 ifstream,这样我就不必更改其中一个的全部 class?
您可以将 ifstream
变成 istream
。 ifstream
只是 istream
的一种更具体的形式。 stringstream
继承自 istream
,因此您可以直接传递 stringstream
。如果这对您不可用,那么您可以将字符串存储到文件中,然后使用 ifstream
重新打开文件,并将 ifstream
传递给第二个函数。
我正在使用两段代码,
第一个 class 使用 AAssetManager(Android NDK 对象)读取“资产”并将其内容保存到单个字符串中。然后它将字符串转换为字符串流并对其进行解析。
第二个class解析类型ifstream,必须与文件关联。
有没有什么方法可以将字符串或字符串流转换为 ifstream,这样我就不必更改其中一个的全部 class?
您可以将 ifstream
变成 istream
。 ifstream
只是 istream
的一种更具体的形式。 stringstream
继承自 istream
,因此您可以直接传递 stringstream
。如果这对您不可用,那么您可以将字符串存储到文件中,然后使用 ifstream
重新打开文件,并将 ifstream
传递给第二个函数。