-7

C++でファイルを読みたい。どちらがより良い読み方(スピードとエレガンス)か知りたいです。

ファイルを文字ごとに読んだり、文字列ごとに読んだりするのと少し混乱しています。

自分のxml/htmlパーサーが欲しいだけです。そして、フォーマットされていないxml/htmlファイルも解析したいと思います。では、どちらの方法が私の目的により適しているでしょうか?

4

1 に答える 1

1

どちらも完全にうまく機能します。本当の問題は、データを読み取った後、データをどのように処理するかです。処理が完全な行に向けられている場合は、完全な行を読み取ります。それが言葉に向けられているなら、それから言葉を読んでください。文字を対象としている場合は、単一の文字を読んでください。

たとえば、ファイルを読み取り、そこに含まれるすべての文字を大文字にしたい場合は、一度に1文字ずつ読み取り、大文字にし、書き出して、繰り返すのがおそらく最も簡単です。

ファイル内のすべての単語の頭文字を大文字にしたい場合は、単語を読み、最初の文字を大文字にし、単語を書き留めて、繰り返すのがおそらく最も簡単です。

どちらも、他のものよりも本当に良い、悪い、エレガントなどではありません-それは純粋にあなたがやろうとしていることに合うものを選ぶことの問題です。一方はもう一方よりもわずかに高速かもしれませんが、それは使用している標準ライブラリに大きく依存し、一般的にどちらが高速になるかを予測する方法はほとんどありません。

于 2012-06-06T06:42:47.700 に答える