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()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。