C++ 中的fgetws() 函数从给定文件流中读取指定的最大宽字符数。
fgetws() 函数在<cwchar> 头文件中定义。
fgetws()原型
wchar_t* fgetws( wchar_t* str, int count, FILE* stream );
fgetws() 函数从给定的文件流(即流)中读取最多 count-1 个宽字符,并将它们存储在 str
指向的数组中。
如果文件结束或在读取 (count-1) 个宽字符之前找到换行符 (\n),则解析停止。数组str
将包含换行符,以防万一被发现。
参数:
str
:指向存储文件内容的宽字符数组的指针。count
:要写入的最大宽字符数。stream
:读取宽字符的文件流。
返回:
成功时,fgetws() 函数返回 str,失败时返回空指针。
示例:fgetws() 函数如何工作?
#include <iostream>
#include <cwchar>
#include <cstdio>
#include <clocale>
using namespace std;
int main()
{
setlocale(LC_ALL, "en_US.UTF-8");
wchar_t line1[] = L"Hëĺĺo Everɏbȍdy\n";
wchar_t line2[] = L"C++ ċăn haʼnđle tĥeșë veɍƴ ŵeįrd čhāråcŧerƨ\n";
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ƨ
相关用法
- C++ fgetwc()用法及代码示例
- C++ fgetpos()用法及代码示例
- C++ fgets()用法及代码示例
- C++ fgetc()用法及代码示例
- C++ fcvt()用法及代码示例
- C++ fwscanf()用法及代码示例
- C++ fmax()用法及代码示例
- C++ fdim()用法及代码示例
- C++ fmin()用法及代码示例
- C++ fetestexcept()用法及代码示例
- C++ forward_list::unique()用法及代码示例
- C++ forward_list::emplace_front()用法及代码示例
- C++ fopen()用法及代码示例
- C++ forward_list::max_size()用法及代码示例
- C++ forward_list::reverse()用法及代码示例
- C++ feupdateenv()用法及代码示例
- C++ forward_list::swap()用法及代码示例
- C++ forward_list::front()、forward_list::empty()用法及代码示例
- C++ functional::bad_function_call用法及代码示例
- C++ find_if()用法及代码示例
注:本文由纯净天空筛选整理自 C++ fgetws()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。