Функция fgetws () в C ++ считывает указанное максимальное количество широких символов из заданного файлового потока.
Функция fgetws () определена в заголовочном файле.
прототип fgetws ()
wchar_t * fgetws (wchar_t * str, int count, FILE * stream);
Функция fgetws () считывает максимум символов шириной count-1 из заданного файлового потока, то есть потока, и сохраняет их в массиве, на который указывает str.
Анализ останавливается, если происходит конец файла или перед чтением широких символов (count-1) обнаружен символ новой строки ( n). Массив str будет содержать широкий символ новой строки, если он будет найден.
Параметры fgetws ()
- str: указатель на широкий массив символов, в котором хранится содержимое файла.
- count: Максимальное количество широких символов для записи.
- stream: файловый поток для чтения широких символов.
fgetws () Возвращаемое значение
В случае успеха функция fgetws () возвращает str, а в случае неудачи возвращает нулевой указатель.
Пример: как работает функция fgetws ()?
#include #include #include #include using namespace std; int main() ( setlocale(LC_ALL, "en_US.UTF-8"); wchar_t line1() = L"Hëĺĺo Everɏbȍdy"; wchar_t line2() = L"C++ ċăn haʼnđle tĥeșë veɍƴ ŵeįrd čhāråcŧerƨ"; wchar_t data(20); FILE *fp = fopen("file.txt","r+"); fputws(line1, fp); fputws(line2, fp); rewind(fp); while(true) ( fgetws(data, 20, fp); if(!feof(fp)) wcout << data << endl; else break; ) fclose(fp); return 0; )
Когда вы запустите программу, возможный результат будет:
Hëĺĺo Everɏbȍdy C ++ ăn haʼnđle tĥeș ë veɍƴ ŵeįrd čhāråc erƨ