📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

122行目: 122行目:
  </syntaxhighlight>
  </syntaxhighlight>
<br>
<br>
以下の例では、QTextStreamクラスを使用して書式を設定している。<br>
<syntaxhighlight lang="c++">
// 浮動小数
QFile file(strFName);
QTextStream OutStream(&file);
// 浮動小数 e+形式
OutStream.setRealNumberNotation(QTextStream::ScientificNotation);
// 浮動小数の桁数を固定
OutStream.setRealNumberNotation(QTextStream::FixedNotation);
// 浮動小数点の桁数を設定
OutStream.setRealNumberPrecision(3);
</syntaxhighlight>
<br>
列ごとに列幅を設定する場合は、1つ列を出力するごとに設定する必要がある。<br>
<syntaxhighlight lang="c++">
QFile file(strFName);
QTextStream OutStream(&file);
// 列を右寄せに設定
OutStream.setFieldAlignment(QTextStream::AlignRight);
// 1列目の文字数を設定 
OutStream.setFieldWidth(20);
OutStream << "1列目"
// 2列目の文字数を設定 
// 最終列の改行では、std::endlを使用してはならない
OutStream.setFieldWidth(40);
OutStream << "2列目" + "\n" << flush;
</syntaxhighlight>
<br>
<u>※注意</u><br>
<u>最終列の改行において、std::endlを使用する場合、それが1つの列として扱われるため、</u><br>
<u>空列が1つ余計に追加されて余分な空白が末尾に追加されてしまう。</u><br>
<br>
以下の例では、出力エンコーディングを指定する。<br>
<syntaxhighlight lang="c++">
// 例. UTF-8にする場合
QFile file(strFName);
QTextStream OutStream(&file);
OutStream.setCodec("UTF-8");
</syntaxhighlight>
<br>
出力エンコードをShift-JISに設定する場合、"~"が文字化けする時がある。<br>
詳細を知りたい場合は、こちらのWebサイトを参照すること。<br>
http://park3.wakwak.com/~ozashin/sw_tips/webapp_tips/sjis_charset.html<br>
<br>
この文字化けを直すには、以下のように記述する。(Winodwsのみ)<br>
<syntaxhighlight lang="c++">
QFile file(strFName);
QTextStream OutStream(&file);
OutStream << str.replace(QChar(0x301C), QChar(0xFF5E));
</syntaxhighlight>
<br>
==== バイナリデータの書き込み ====
==== バイナリデータの書き込み ====
バイナリデータを書き込む場合は、<code>QFile</code>クラスの<code>write</code>メソッドを使用する。<br>
バイナリデータを書き込む場合は、<code>QFile</code>クラスの<code>write</code>メソッドを使用する。<br>