1

コマンドを使用WriteFileして、希望するデザインでファイルに書き込もうとしています。問題は、文字列またはバッファーを使用してファイルに書き込む必要があることです。

次の形式で印刷する必要があります。

a1   a2   a3   a4   a5
b1   b2   b3   b4   b5
.
.
.

これらはダブルタイプです。私が抱えている主な問題は、文字列と数字を連結することです。それが可能であれば、私は簡単に行うことができます (たとえば、+ が演算子であるとしましょう:)

a1^"   "^a2^"   "^   "^a4"\n".

とループしますが、そのオプションはありません。

助けていただければ幸いです。

4

2 に答える 2

2

データをバッファに事前にフォーマットします。本当に WinAPI しか使えない場合は、wsprintf. 次に、正しくフォーマットされたデータでバッファがいっぱいになったら、 を使用してすべてを一度にディスクに書き込みWriteFileます。ただし、それ自体には、WriteFile書式設定や変換の機能はまったくありません。

于 2013-06-27T23:04:40.347 に答える
1

1 つのオプションは、std::ostringstream(またはstd::wostringstreamワイド文字の場合) を使用してデータを文字列にフォーマットし、それをファイルに書き出すことです。

std::ostringstream strm;
double a = 1.1;
double b = 2.2;
strm << "hello " << a << " world " << b;

DWORD written;
WriteFile(handle, strm.str().c_str(), strm.str().size(), &written, NULL);
于 2013-06-27T23:09:37.057 に答える