Page History
[ |../../index.htm#lansa/stm_file_write.htm]
現在地:
...
9.207 STM_FILE_WRITE
| Note |
|---|
注意 |
...
: 9.1 |
...
この組み込み関数によって、指定のストリーム・ファイルにデータを書き込みます。このストリーム・ファイルは、STM_FILE_OPENによってあらかじめ開いています。 OPENによってあらかじめ開いています。 LineTerminatorオプションを指定してストリーム・ファイルを開いている場合、データ・ブロックにあるデータが書き込まれ、指定の終了文字で終わります。
LineTerminatorオプションを指定してストリーム・ファイルを開いている場合、データ・ブロックにあるデータが書き込まれ、指定の終了文字で終わります。
LineTerminator=NONEオプションを指定してストリーム・ファイルを開いている場合、データ・ブロックにあるデータがデータ・ストリームに書き込まれます。STM_FILE_WRITE_CTL組み込み関数を使用することによって、データ・ストリームの適切な位置に行終了文字を書き込むことができます。 CTL組み込み関数を使用することによって、データ・ストリームの適切な位置に行終了文字を書き込むことができます。
関連する組み込み関数:STM_FILE_OPEN、STM_FILE_READ、STM_FILE_CLOSE、STM_FILE_WRITE_CTL Line Terminatorの使用については、「Terminatorの使用については、「9.205 STM_FILE_OPEN」を参照してください。 」を参照してください。
引数
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | N | 必須 | データが書き込まれるファイルのファイル番号(ファイル・ハンドル) この番号は、ストリーム・ファイルに割り当てられ、STM_FILE_OPENで戻されています。 | 1 | 3 | 0 | 0 |
2 | A | 必須 | データ・ブロック1 | 1 | 制限なし |
3 | A | 任意 | データ・ブロック2 | 1 | 制限なし |
4 | A | 任意 | データ・ブロック3 | 1 | 制限なし |
5 | A | 任意 | データ・ブロック4 | 1 | 制限なし |
6 | A | 任意 | データ・ブロック5 | 1 | 制限なし |
7 | A | 任意 | データ・ブロック6 | 1 | 制限なし |
8 | A | 任意 | データ・ブロック7 | 1 | 制限なし |
9 | A | 任意 | データ・ブロック8 | 1 | 制限なし |
10 | A | 任意 | データ・ブロック9 | 1 | 制限なし |
11 | A | 任意 | データ・ブロック10 | 1 | 制限なし |
戻り値
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | A | 任意 | 戻りコード OK = |
データが書き込まれた ER = エラーが発生した | 2 | 2 |
例
このIBM iの例では、ストリーム・ファイルがIBM i IFSに書き込まれます。 IFSに書き込まれます。
ファイルは、ディレクトリ/tmpに書き込まれ、example1.txtという名前が付けられます。 txtという名前が付けられます。
ファイルはテキストとして書き込まれ、各行は復帰改行(CRLF)で終わります。各行のフィールドでは、末尾ブランクが除去されないため、データは固定の書式のように見えます。
FUNCTION OPTIONSで終わります。各行のフィールドでは、末尾ブランクが除去されないため、データは固定の書式のように見えます。
FUNCTION OPTIONS(*DIRECT)
...
**********
...
DEFINE FIELD(#FILENO)
...
TYPE(*DEC)
...
LENGTH(3)
...
DECIMALS(0)
...
DESC('
...
Allocated file number')
...
DEFINE FIELD(#RETNCODE)
...
TYPE(*CHAR)
...
LENGTH(2)
...
DEFINE FIELD(#OPTIONS)
...
TYPE(*CHAR)
...
LENGTH(256)
...
DESC('
...
Options for stream file open')
CHANGE FIELD(#OPTIONS)
...
TO('''
...
WRITE notrim Text lineTerminator= CRLF CodePage=819''')
**********
...
USE BUILTIN(STM_FILE_OPEN)
...
WITH_ARGS('''/tmp/example1.txt'''
...
#OPTIONS)
...
TO_GET(
...
#FILENO #RETNCODE)
IF COND('#retncode *NE OK')
MESSAGE MSGTXT('Error occurred on OPEN')
RETURN
ENDIF
**********
...
**********
...
Read file PSLMST and write to the IFS file example1.txt
**********
...
Each line written contains employee name and phone number.
**********
...
Each line written contains employee name and phone number.
**********
...
SELECT FIELDS((#SURNAME)
...
(#GIVENAME)
...
(#PHONEBUS))
...
FROM_FILE(PSLMST)
...
USE BUILTIN(STM_FILE_WRITE)
...
WITH_ARGS(
...
#FILENO #SURNAME #GIVENAME #PHONEBUS) TO_GET(#RETNCODE)
...
IF COND('
...
#retncode *NE OK')
MESSAGE MSGTXT('Error writing to stream file')
RETURN
ENDIF
ENDSELECT
**********
...
**********
...
Close stream file and finish
**********
...
USE BUILTIN(STM_FILE_CLOSE)
...
WITH_ARGS(#FILENO)
...
RETURN