在 c++ 中读取文件的更好方法是什么
What is a better way of reading a file in c++?
我想用 c++ 读取一个文件。我想知道哪种是更好的阅读方式(速度和优雅)。
我对逐个字符读取文件或逐个字符串读取有点困惑。
我只想拥有自己的 xml/html 解析器。我甚至想解析一个未格式化的 xml/html 文件。那么哪种方法更适合我的目的呢?
两者都可以很好地工作。真正的问题是,在读取数据后,你想用什么来处理数据——如果你的处理面向完整的行,那么读取完整的行。如果它面向单词,那么阅读单词。如果它面向字符,则读取单个字符。
例如,如果您想读取一个文件并将其包含的每个字母大写,则一次读取一个字符、将其大写、写出并重复可能是最简单的方法。
如果您想将文件中每个单词的首字母大写,最简单的方法是阅读一个单词,将第一个字母大写,写出单词,然后重复。
两者都不是真正更好,更差,更优雅等等,等等 - 这纯粹是一个选择适合你想要做的事情的问题。一个可能比另一个略快,但这在很大程度上取决于您使用的标准库,并且几乎没有(如果有的话)方法可以预测哪个会更快。
相关文章:
- 初始化具有非默认构造函数的std::数组项的更好方法
- Protobuf中重复字段的问题.使用重复字段进行序列化/反序列化的更好方法是什么?
- 编写按初始值循环的循环的更好方法是什么
- 用 c++ 为游戏制作"bullet"的更好方法?
- 在CMakeLists中包含目录的更好方法.txt
- 将QDomDocument数据用作文本的更好方法
- C++ - 创建具有相同字符的特定大小的以 null 结尾的 c 样式字符串的更好方法
- 在 sqlite3 中批量插入的更好方法C++
- 设计许多单例代码结构的更好方法
- 使用继承的类模板避免公共成员不可见和源代码膨胀/重复的更好方法
- 在初始化列表中初始化数组的更好方法
- 将对象从一个 std::d eque 移动到另一个的更好方法
- 请告诉我在巴泽尔拥有多平台工作空间的更好方法
- 构造具有大量数据的对象的更好方法(C++)
- 从2D矢量中找出最小尺寸的向量元素的更好方法
- 在C++中创建不可变对象的更好方法
- 在构造函数中组织初始值设定项列表的更好方法
- std::copy with return values - 防止"expression: string iterators incompatible"的更好方法?
- 删除数组成员的更好方法是什么?
- 在C 中操作数据的更好方法是什么