|
≫ |
|
|
|
HP OpenVMS HP C ランタイム・ライブラリ・リファレンス・マニュアル (下巻)
指定されたファイルから 1 行のワイド文字を読み込みます。
形式
#include <wchar.h>
wchar_t *fgetws (wchar_t *wstr, int
maxchar, FILE *file_ptr);
関数バリアント
fgetws関数には,
_fgetws32および
_fgetws64という名前のバリアントがあり,それぞれ 32 ビット・ポインタ・サイズおよび 64 ビット・ポインタ・サイズで使用されます。ポインタ・サイズ固有の関数の使い方の詳細については,『HP C ランタイム・ライブラリ・リファレンス・マニュアル(上巻)』第 1.9 節を参照してください。
引数
wstrファイルから読み込んだ情報を格納できるたけの十分な大きさのワイド文字の文字列を指すポインタ。
maxchar読み込むワイド文字の最大文字数。
file_ptrファイル・ポインタ。
説明
fgetws関数は,指定されたファイルからワイド文字を読み込み, wstr によって示される配列に格納します。この関数は,maxchar - 1 文字まで読み込むか,改行文字が読み込まれ,変換され,wstr に転送されるまで読み込むか,またはファイルの終端 (EOF) 条件が検出されるまで読み込みます。行末はヌル・ワイド文字で区切られます。読み込んだ文字数が maxchar 文字より少ない場合,
fgetwsは入力行の最後に改行文字を付けてユーザ・バッファに格納します。
戻り値
x
|
wstr を指すポインタ。
|
NULL
|
ファイルの終端 (EOF) またはエラーを示します。読み込みエラーが発生した場合,
wstr の内容は未定義です。読み込みエラーが発生した場合,
errno
が設定されます。設定される可能性のある
errno
の値の一覧については,
fgetwc
を参照してください。
|
例
#include <stdlib.h>
#include <stdio.h>
#include <locale.h>
#include <wchar.h>
main()
{
wchar_t wstr[80],
*ret;
FILE *fp;
/* Create a dummy data file */
if ((fp = fopen("file.dat", "w+")) == NULL) {
perror("open");
exit(1);
}
fprintf(fp, "this is a test\n") ;
fclose(fp) ;
/* Open a test file containing : "this is a test" */
if ((fp = fopen("file.dat", "r")) == (FILE *) NULL) {
perror("File open error");
exit(EXIT_FAILURE);
}
ret = fgetws(wstr, 80, fp);
if (ret == (wchar_t *) NULL) {
perror("fgetws failure");
exit(EXIT_FAILURE);
}
fputws(wstr, stdout);
fclose(fp);
delete("file.dat");
}
|
|