[doc] gettext printf_conversion mprintf msprintf mfprintf pages updated & fixed
[scilab.git] / scilab / modules / output_stream / help / ja_JP / printf_conversion.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) XXXX-2008 - INRIA
5  * Copyright (C) 2012 - 2016 - Scilab Enterprises
6  * Copyright (C) 2021 - Samuel GOUGEON
7  *
8  * This file is hereby licensed under the terms of the GNU GPL v2.0,
9  * pursuant to article 5.3.4 of the CeCILL v.2.1.
10  * This file was originally licensed under the terms of the CeCILL v2.1,
11  * and continues to be available under such terms.
12  * For more information, see the COPYING file which you should have received
13  * along with this program.
14  *
15  -->
16 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
17           xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml"
18           xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
19           xmlns:scilab="http://www.scilab.org" xml:id="printf_conversion" xml:lang="ja">
20     <refnamediv>
21         <refname>printf_conversion</refname>
22         <refpurpose>mprintf, msprintf, mfprintf 変換仕様</refpurpose>
23     </refnamediv>
24     <refsection>
25         <title>説明</title>
26         <para>
27             <literal>mprintf</literal> ,
28             <literal>msprintf</literal> , <literal>mfprintf</literal>における各変換仕様.
29             <literal>format</literal> パラメータは以下のような構文を有します:
30         </para>
31         <itemizedlist>
32             <listitem>
33                 <para>A % (パーセント) 符号.</para>
34             </listitem>
35             <listitem>
36                 <para>
37                     An optional integer n ≥ 1 followed by "$". n is the index of the input data
38                     to substitute to the placeholder, in the msprintf, mprintf .. list of input data.
39                     In a format string, placeholders are either all numbered or all non-numbered.
40                     A given numbered placeholder can be used only once in its C-format string
41                     (Scilab limitation).
42                 </para>
43             </listitem>
44             <listitem>
45                 <para>
46                     0個以上の <literal>options</literal>で,
47                     変換仕様の意味を修正します.
48                     以下のリストに<literal>option</literal>文字とその意味を示します:
49                 </para>
50                 <table>
51                     <tr>
52                         <th>- :</th>
53                         <td>
54                             左揃え, フィールド内では, 変換の結果.
55                         </td>
56                     </tr>
57                     <tr>
58                         <th>+ :</th>
59                         <td>
60                             (+または -)を指定する符号変換の結果を開始.
61                         </td>
62                     </tr>
63                     <tr>
64                         <td style="white-space:nowrap"><emphasis role="bold">' ' :</emphasis></td>
65                         <td>
66                             (空白) 符号変換後の最初の文字が符号ではない場合に結果の
67                             前に空白文字を付加します.
68                             (空白) および +オプションが共に指定された場合,
69                             (空白) オプションは無視されます.
70                         </td>
71                     </tr>
72                     <tr>
73                         <th># :</th>
74                         <td>
75                             別の形式に値を変換.
76                             <literal>c</literal>, <literal>d</literal>, <literal>i</literal>,
77                             <literal>s</literal>, および <literal>u</literal> 変換の場合,
78                             <literal>#</literal>オプションの効果はありません.
79                             <literal>o</literal> 変換の場合, <literal>#</literal> は
80                             結果の最初の桁を強制的に0 (ゼロ)にし,精度を増加させます.
81                             <literal>x</literal> および <literal>X</literal>変換の場合,
82                             ゼロでない結果の前に0xまたは0Xが付加されます.
83                             <literal>e, E, f, g,</literal> および <literal>G</literal>変換の場合,
84                             小数点以下の値がない場合でも結果には常に小数点が含まれます.
85                             <literal>g</literal> および
86                             <literal>G</literal> 変換の場合,
87                             末尾の0は結果から除かれません.
88                         </td>
89                     </tr>
90                     <tr>
91                         <th>0 :</th>
92                         <td>
93                             <literal>d</literal>,
94                             <literal>i</literal>, <literal>o</literal>, <literal>u</literal>,
95                             <literal>x</literal>, <literal>X</literal>, <literal>e</literal>,
96                             <literal>E</literal>, <literal>f</literal>, <literal>g</literal>,
97                             および <literal>G</literal>変換において
98                             (符号または基底の指示子の後に)
99                             前に0をつけることによりフィールド幅内を埋めます:
100                             空白によるパディングは行われません
101                             <literal>0</literal> および <literal>\-</literal>(ダッシュ)が共に指定された場合,
102                             <literal>0</literal>フラグは無視されます.
103                             <literal>d</literal>, <literal>i</literal>,
104                             <literal>o</literal> <literal>u</literal>, <literal>x</literal>,
105                             および <literal>X</literal> 変換の場合, 精度が指定されると,
106                             <literal>0</literal> フラグも無視されます.
107                         </td>
108                     </tr>
109                 </table>
110             </listitem>
111         </itemizedlist>
112         <para>
113             オプションの10進数文字列は
114             最小フィールド幅を指定します.
115             変換された値の文字がこのフィールド幅よりも少ない場合,
116             フィールドはフィールド幅の指定長まで左側にパディングされます.
117             左寄せオプションが指定された場合,
118             フィールドは右側にパディングされます.
119         </para>
120         <para>
121             オプションの精度. 精度は <literal>.</literal> (ドット)の後に
122             10進数文字列が続きます.
123             精度が指定されない場合,
124             このパラメータは 0 (ゼロ)と扱われます.
125             精度指定子:
126         </para>
127         <para>
128         <itemizedlist>
129             <listitem>
130                 <literal>d</literal>,
131                 <literal>u</literal>, <literal>o</literal>, <literal>x</literal>, または
132                 <literal>X</literal>変換に関する最小表示桁数
133             </listitem>
134             <listitem>
135                 <literal>e</literal>, <literal>E</literal>, および <literal>f</literal>
136                 における小数点の後に表示する桁数
137             </listitem>
138             <listitem>
139                 <literal>g</literal> および<literal>G</literal>変換における
140                 有効桁の最大値
141             </listitem>
142             <listitem>
143                 <literal>s</literal>変換において文字列から出力される
144                 最大文字数
145             </listitem>
146             <listitem>
147                 適用される変換の種類を示す文字:
148                 <table>
149                     <tr>
150                         <th>% :</th>
151                         <td>
152                             変換しません.  %を表示.
153                             <note>
154                                 This may be useful for instance to print percentages, or
155                                 to process some LaTeX expression including LaTeX comments
156                                 starting with "%", etc.
157                             </note>
158                         </td>
159                     </tr>
160                     <tr>
161                         <th>s :</th>
162                         <td>
163                             Accepts a string or boolean <literal>value</literal>,
164                             文字列から末尾または精度に示された文字数に達するまで,
165                             文字に変換します.精度が指定されない場合,末尾までの全ての文字が
166                             表示されます.
167                             Input strings including some UTF-8 extended characters are supported.
168                             Booleans are converted into 'T' or 'F'.
169                         </td>
170                     </tr>
171                     <tr>
172                         <th>c :</th>
173                         <td>
174                             Not supported.
175                         </td>
176                     </tr>
177                     <tr>
178                         <td colspan="2">
179                             All following conversions accept any decimal numerical or boolean
180                             input <literal>value</literal>. Only the real part of any input
181                             complex number is considered. Booleans are implicitly converted
182                             into 0 and 1.
183                         </td>
184                     </tr>
185                     <tr>
186                         <th>d, i :</th>
187                         <td>
188                             Converts the input <literal>value</literal> to a signed integer int32
189                             notation. Conversions for input |Numbers| ≥ 2^31 are not reliable.
190                             精度は表示される最小の桁数を指定します.
191                             変換される値がより少ない桁数で表せる場合,
192                             前にゼロを付加して拡張されます.
193                             デフォルトの精度は1です.値0を精度0で変換した結果は,
194                             ヌル文字列となります.
195                             前に付加する文字をゼロとしてフィールド幅を指定すると,
196                             フィールド幅までの値では前にゼロを付加するパディングが
197                             行われます.
198                         </td>
199                     </tr>
200                     <tr>
201                         <th>u :</th>
202                         <td>
203                             Converts the input <literal>value</literal> to an unsigned integer
204                             uint32 notation. Conversions for input |Numbers| ≥ 2^32 are not reliable.
205                             精度は表示される最小の桁数を指定します.
206                             変換される値がより少ない桁数で表せる場合,
207                             前にゼロを付加して拡張されます.
208                             デフォルトの精度は1です.値0を精度0で変換した結果は,
209                             ヌル文字列となります.
210                             前に付加する文字をゼロとしてフィールド幅を指定すると,
211                             フィールド幅までの値では前にゼロを付加するパディングが
212                             行われます.
213                         </td>
214                     </tr>
215                     <tr>
216                         <th>o :</th>
217                         <td>
218                             Converts the input <literal>value</literal> to an unsigned octal notation.
219                             Conversions for input |Numbers| ≥ 2^32 are not reliable.
220                             精度は表示される最小の桁数を指定します.
221                             変換される値がより少ない桁数で表せる場合,
222                             前にゼロを付加して拡張されます.
223                             デフォルトの精度は1です.値0を精度0で変換した結果は,
224                             ヌル文字列となります.
225                             前に付加する文字をゼロとしてフィールド幅を指定すると,
226                             フィールド幅までの値では前にゼロを付加するパディングが
227                             行われます. フィールド幅に8進数を使用することはできません.
228                         </td>
229                     </tr>
230                     <tr>
231                         <th>x, X :</th>
232                         <td>
233                             Converts the input <literal>value</literal> to an unsigned hexadecimal
234                             notation. Conversions for input |Numbers| ≥ 2^32 are not reliable.
235                             <literal>x</literal>変換では,
236                             文字``abcdef''が使用されます;<literal>X</literal>変換では,
237                             文字``ABCDEF''が使用されます.
238                             精度はは表示される最小の桁数を指定します.
239                             変換される値がより少ない桁数で表せる場合,
240                             前にゼロを付加して拡張されます.
241                             デフォルトの精度は1です.値0を精度0で変換した結果は,
242                             ヌル文字列となります.
243                             前に付加する文字をゼロとしてフィールド幅を指定すると,
244                             フィールド幅までの値では前にゼロを付加するパディングが
245                             行われます.
246                         </td>
247                     </tr>
248                     <tr>
249                         <th>f :</th>
250                         <td>
251                             Converts the input <literal>value</literal> to a decimal notation in
252                             the format %[\-]<literal>ddd.ddd</literal>.
253                             小数点以下の桁数は,精度指定子に等しくなります.
254                             <itemizedlist>
255                                 <listitem>
256                                     精度が指定されない場合, 6桁が出力されます.
257                                 </listitem>
258                                 <listitem>
259                                     精度がゼロの場合, 小数点は表示されず,
260                                     システムは<literal>value</literal>に最も近い整数に丸めた数を
261                                     出力します.
262                                 </listitem>
263                                 <listitem>
264                                     小数点が出力される場合,最低でも1桁がその前に出力されます.
265                                 </listitem>
266                             </itemizedlist>
267                         </td>
268                     </tr>
269                     <tr>
270                         <th>e, E :</th>
271                         <td>
272                             Converts the input <literal>value</literal> to the exponential
273                             form %[\-]<literal>d.ddde</literal>+/\-<literal>dd</literal>.
274                             小数点の前に1桁があり,小数点の後の桁数は精度指定子に等しくなります.
275                             <itemizedlist>
276                                 <listitem>
277                                     精度が指定されない場合, 6桁が出力されます.
278                                 </listitem>
279                                 <listitem>
280                                     精度がゼロの場合, 小数点は表示されません.
281                                 </listitem>
282                                 <listitem>
283                                     <literal>E</literal> 変換文字の場合,
284                                     指数の前の e の代わりに E を付けた数値を出力します.
285                                     指数には常に2桁以上が含まれます.
286                                     値が 0 の場合, 指数は 0 となります.
287                                 </listitem>
288                             </itemizedlist>
289                         </td>
290                     </tr>
291                     <tr>
292                         <td style="white-space:nowrap"><emphasis role="bold">g, G :</emphasis></td>
293                         <td>
294                             有効桁数を指定する精度を付けた
295                             <literal>e</literal>, <literal>E</literal>, または
296                             <literal>f</literal>変換文字の形式に変換します.
297                             Booleans are converted into 0 and 1. Only the real part of complex
298                             numbers is considered.
299                             末尾のゼロは結果から削除されます.
300                             小数点は数字が続く場合にのみ表示されます.
301                             使用される形式は変換される値に依存します.
302                             変換結果の指数が-4よりも小さい場合,または,
303                             精度より大きいか等しい場合に,
304                             <literal>e</literal> (使用されるフラグが<literal>G</literal>の場合は
305                             <literal>E</literal>)形式が使用されます.
306                         </td>
307                     </tr>
308                 </table>
309             </listitem>
310         </itemizedlist>
311         </para>
312         <para>
313             フィールド幅または精度は, 桁文字の代わりに<literal>*</literal> (アスタリスク)で
314             示すことができます.
315             この場合,整数 <literal>value</literal>パラメータは
316             フィールド幅または精度を指定します.
317             出力に変換される<literal>value</literal> パラメータは
318             変換文字が達するまで取得されません.
319             このため,
320             フィールド幅または精度を指定するパラメータは変換される値よりも
321             前に現れる必要があります.
322         </para>
323         <para>変換の結果がフィールド幅よりも広い場合,
324             このフィールドは変換結果を含められる幅まで拡張されます.
325         </para>
326         <para>
327             +記号の意味は<literal>+</literal>または(空白)整形オプションの
328             どちらが指定されたかに依存します.
329         </para>
330         <para>指数形式 %e の表示はプレットフォームに依存し,
331             指数の桁数は異なります.
332             <informaltable border="1">
333                 <tr>
334                     <td>プラットフォーム</td>
335                     <td>例: msprintf("%e",1.23e4)</td>
336                 </tr>
337                 <tr>
338                     <td>Windows</td>
339                     <td>1.23000e+004</td>
340                 </tr>
341                 <tr>
342                     <td>Linux/Mac OS</td>
343                     <td>1.23000e+04</td>
344                 </tr>
345             </informaltable>
346         </para>
347         <para>
348             <emphasis role="bold">Special escaped sequenced</emphasis> are supported in C-format
349             strings:
350             <table>
351                 <tr>
352                     <th>\n :</th>
353                     <td>Go to Next line (line feed)</td>
354                 </tr>
355                 <tr>
356                     <th>\r :</th>
357                     <td>Return: go to the head of current line (for overprinting)</td>
358                 </tr>
359                 <tr>
360                     <th>\t :</th>
361                     <td>horizontal Tab</td>
362                 </tr>
363                 <tr>
364                     <th>\\ :</th>
365                     <td>print a backslash \</td>
366                 </tr>
367             </table>
368         </para>
369     </refsection>
370     <refsection>
371         <title>例</title>
372         <programlisting role="example"><![CDATA[
373 mprintf('a string: %s\n', 'Scilab');
374 mprintf('an integer: %d\n', 10);
375 mprintf('an integer: %4d\n', 10);
376 mprintf('a left justified integer: %-4d\n', 10);
377 mprintf('an integer converted to float: %#fd\n',10);
378 mprintf('an integer with a sign: %+4d\n', 10);
379 mprintf('an integer with a sign: %+4d\n', -10);
380 mprintf('an integer padded with zeros: %04d\n', 10);
381 mprintf('an unsigned integer: %u\n', 10);
382 mprintf('an unsigned integer: %4u\n', -10);
383 mprintf('an integer converted to hexadecimal: %x\n', 10);
384 mprintf('a float: %d\n', %pi);
385 mprintf('a float: %3.2d\n', %pi);
386 mprintf('a float (exponential form): %3.2e\n', %pi);
387 mprintf('a float (exponential form): %3.2g\n', %pi);
388 mprintf('a character: %c\n', 'a');
389 mprintf('a character: %c\n', 'aaa');
390      ]]></programlisting>
391         <para/>
392         <para>
393             With input booleans:
394         </para>
395         <programlisting role="example"><![CDATA[
396 mprintf("\n%%d: %d,  %%u: %u,  %%o: %o,  %%f: %f,  %%e: %e,  %%s: %s\n" + ..
397           "%%d: %d,  %%u: %u,  %%o: %o,  %%f: %f,  %%e: %e,  %%s: %s\n", ..
398         %T, %T, %T, %T, %T, %T, %F, %F, %F, %F, %F, %F);
399      ]]></programlisting>
400         <screen><![CDATA[
401 %d: 1,  %u: 1,  %o: 1,  %f: 1.000000,  %e: 1.000000e+00,  %s: T
402 %d: 0,  %u: 0,  %o: 0,  %f: 0.000000,  %e: 0.000000e+00,  %s: F
403 ]]></screen>
404         <para/>
405         <para>
406             With numbered placeholders:
407         </para>
408         <programlisting role="example"><![CDATA[
409 mprintf("%2$s is %1$d-year old.\n", 32, "Peter");
410      ]]></programlisting>
411         <screen><![CDATA[
412 Peter is 32-year old.
413 ]]></screen>
414         <para/>
415         <para>
416             With escaped sequences and UTF-8 extended characters:
417         </para>
418         <programlisting role="example"><![CDATA[
419 mprintf("The path T:\\abc does not exist.\n");
420 mprintf("abcdefghijk\tαβδ\tεϵ\tζηθικλ\rABCDE\n");
421      ]]></programlisting>
422         <screen><![CDATA[
423 --> mprintf("The path T:\\abc does not exist.\n");
424 The path T:\abc does not exist
425
426 --> mprintf("abcdefghijk\tαβδ\tεϵ\tζηθικλ\rABCDE\n");
427 ABCDEfghijk αβδ εϵ  ζηθικλ
428 ]]></screen>
429     </refsection>
430     <refsection role="see also">
431         <title>参照</title>
432         <simplelist type="inline">
433             <member>
434                 <link linkend="mprintf">mprintf</link>
435             </member>
436             <member>
437                 <link linkend="mfprintf">mfprintf</link>
438             </member>
439             <member>
440                 <link linkend="msprintf">msprintf</link>
441             </member>
442         </simplelist>
443     </refsection>
444     <refsection role="history">
445         <title>履歴</title>
446         <revhistory>
447             <revision>
448                 <revnumber>6.1.0</revnumber>
449                 <revdescription>
450                     Numbered placeholders "%n$.." are supported.
451                 </revdescription>
452             </revision>
453             <revision>
454                 <revnumber>6.1.1</revnumber>
455                 <revdescription>
456                     Input boolean data can be converted.
457                 </revdescription>
458             </revision>
459         </revhistory>
460     </refsection>
461 </refentry>