c++ - C++ 读取包含空字符的流的行
问题描述
我有以下问题 - 有一个包含信息的文件(我不知道文件的大小),如下所示:
\0\0\0\0\0\0123456789\0\0\0\0\0\0Name
\0\0\0\0\0\0111111111\0\0\0\0\0\0Name1
\0\0\0\0\0\0222222222\0\0\0\0\0\0Name2
我的目标是阅读中间的数字和行尾的名称。我正在尝试使用这样的字符串逐行读取:
std::ifstream fileStream(file, std::ios::binary);
if (fileStream.is_open())
{
string line;
while (getline(fileStream, line))
{
cout << line;
}
}
但我的输出是:没有
>
>
>
我猜那是因为那里有空字符,并且当遇到第一个空字符时字符串被终止,所以这就是没有输出的原因。我只是不知道如何阅读整个内容然后修剪空字符。
任何帮助,将不胜感激。
解决方案
推荐阅读
- laravel - Laravel:可以用 PHPUnit 测试 dompdf 吗?
- python - 遍历字典中的列表
- git - git config 命令返回:致命:无法读取配置文件 '%HOMEDRIVE%%HOMEPATH%/.gitconfig':没有这样的文件或目录
- c# - ASP.NET OWIN OpenID Connect 未创建用户身份验证
- xslt-2.0 - 如何从 xslt 中的多个字段中查找和格式化最新日期
- python-3.x - 使用 Requests 库实现与 Urllib 相同的结果(Pickle 模块)
- ios - 差异:/Podfile.lock:没有这样的文件或目录 - React Native - Xcode
- django - 测试受保护的视图 - 处理 PermissionDenied 响应
- python - 如何对它们之间有空格的列表进行排序
- c# - Roslyn C# CodeFixProvider 和 Trivia 意外换行