73.fseek与宽字符读取文件
- fseek
//文件路径
char path[] = "1.txt"; //FILE *pf = fopen(path, "a+");//尾部添加,文件指针在尾部
//FILE *pf = fopen(path, "w+");//文件指针在头部,清空内容
FILE *pf = fopen(path, "r+");//文件指针在头部,不清空内容
fseek(pf, , SEEK_END);
fputs("", pf);
fflush(pf);//刷新文件 //插入
int length = ;
for (int i = ; i < ;i++)
{
fseek(pf, --i-, SEEK_END);
int ch = fgetc(pf);
//#define SEEK_CUR 1 当前
//#define SEEK_END 2 结束
//#define SEEK_SET 0 开头 fseek(pf, -i-, SEEK_END);
fputc(ch,pf);
fflush(pf);//刷新文件
}
fseek(pf, -, SEEK_END);//a+ 文件指针移动无效
//r+,文件覆盖
fputs("abcdefg", pf);
fflush(pf);//刷新文件 fclose(pf); - 以"rb+"的形式打开文件指针在头部,不清空内容
char path[] = "1.txt";
FILE *pf = fopen(path, "rb+");//文件指针在头部,不清空内容 fseek(pf, -, SEEK_END);//a+ 文件指针移动无效
fputc('', pf);
fputs("", pf); rewind(pf); char ch;
while ((ch=fgetc(pf))!=EOF)
{
putchar(ch);
} fclose(pf); - 宽字符读取文件
//设定中文
setlocale(LC_ALL, "zh-CN");
wchar_t path[] = L"Z:\\I\\百度内部员工联系方式.txt";
//文件指针在头部,不清空内容
FILE *pf = _wfopen(path, L"r"); if (pf==NULL)
{
printf("error");
}
wchar_t wstr[] = { };
wchar_t *p = fgetws(wstr, , pf);
wprintf(L"-%s-\n", wstr);
p = fgetws(wstr, , pf);
while (p!=NULL)
{
//输出
wprintf(L"-%s-\n", wstr);
p = fgetws(wstr, , pf);
} fclose(pf); - 常用宽字符文件函数
//fgetc fgetwc
//fputc fputwc
//fgets fgetws
//fputs fputws
//fprintf fwprintf
//fscanf fwscanf //fread ,fwrite - fgetwc fputwc putwchar用法示例
setlocale(LC_ALL, "zh-CN");
FILE *pfr = _wfopen(L"QQ-腾讯通讯录.txt", L"rb");
FILE *pfw = _wfopen(L"QQc.txt", L"wb");
while (!feof(pfr))
{
wchar_t ch = fgetwc(pfr);//获取宽字符
fputwc(ch, pfw);
putwchar(ch);//显示宽字符 }
fclose(pfr);
fclose(pfw); - fgetws fputws wprintf用法示例
setlocale(LC_ALL, "zh-CN");
FILE *pfr = _wfopen(L"QQ-腾讯通讯录.txt", L"rb");
FILE *pfw = _wfopen(L"QQ.txt", L"wb");
while (!feof(pfr))
{
wchar_t wstr[] = { };
fgetws(wstr, , pfr);
wprintf(L"%ls",wstr);
fputws(wstr, pfw);//宽字符写入 }
fclose(pfr);
fclose(pfw); - fwscanf fwprintf用法示例
setlocale(LC_ALL, "zh-CN");
wchar_t wstr[] = { };
fwscanf(stdin, L"%s", wstr);
fwprintf(stdout, L"%s%d%s", L"你好", ,wstr);
73.fseek与宽字符读取文件的更多相关文章
- 【java】:读取文件
PS:转 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容4.随机读取文件内容 public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制 ...
- java读取文件多种方法
1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 public class ReadFromFile { /** * 以字节为单位读取文件,常用 ...
- java实现读取文件大全
1.按字节读取文件内容 2.按字符读取文件内容 3.按行读取文件内容 4.随机读取文件内容 public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件 ...
- 【转】Java读取文件方法大全
本文转自:http://www.cnblogs.com/lovebread/archive/2009/11/23/1609122.html#undefined 目录: 按字节读取文件内容 按字符读取文 ...
- [Java]读取文件方法大全
1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 , byteread); } } catch (IOException ...
- Java读取文件方法和给文件追加内容
本文转载自:http://www.cnblogs.com/lovebread/archive/2009/11/23/1609122.html 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文 ...
- Java开发之I/O读取文件实例详解
在java开发或者android开发中,读取文件是不可避免的,以下对java开发中读取文件做了归纳和详解: 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 pa ...
- 转载:[Java]读取文件方法大全
转载网址:http://www.cnblogs.com/lovebread/archive/2009/11/23/1609122.html 1.按字节读取文件内容 2.按字符读取文件内容 3.按行读取 ...
- [Java]读取文件方法大全(转)
[Java]读取文件方法大全 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文件内容 4.随机读取文件内容 public class ReadFromFile { /** ...
随机推荐
- maven中使用mybatis
1.Mybatis优缺点 优点: Mybatis实现了对Dao层的封装,隔离了SQL语句,便于管理,避免了像JDBC那样操作数据集,便于扩展等等. 缺点: Mybatis属于?半自动“ORM”,比Hi ...
- Kinect for Windows V2 SDK+ VS2012 环境搭建
眼下使用的SDK版本号是KinectSDK-v2.0-PublicPreview1409-Setup.exe. 下载地址:http://www.microsoft.com/en-us/download ...
- hdoj2066一个人的旅行
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission ...
- linux 不常用命令及命令组合
lsof:list open files, sudo lsof | grep deleted:则列出虽然被删除,但还处于打开状态的文件.注意,这些文件占用的空间,只有在这些文件关闭时,才会被释放. m ...
- 4.angularJS-指令(directive)
转自:https://www.cnblogs.com/best/p/6225621.html 指令(directive)是AngularJS模板标记和用于支持的JavaScript代码的组合.Angu ...
- 《Linux企业应用案例精解》一书已由清华大学出版社出版
<Linux企业应用案例精解>简介 650) this.width=650;" border="0" alt="223754878.jpg" ...
- Laravel 框架指定路由关闭 csrf
修改 app\Http\Middleware\VerifyCsrfToken.php 内容: <?php namespace App\Http\Middleware; use Closure; ...
- React开发实时聊天招聘工具 -第一章
第一章 课程道学 6个页面 弱化css Antd-mobile作为组件库 Redux 状态管理 React-Router 路由 Axios异步请求 后端Express框架 Socket.io 数据库: ...
- JS中部分 Array 对象方法介绍
1.concat() concat() 方法用于连接两个或多个数组.该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本 <script type="text/javascrip ...
- MFC- OnIdle空闲处理
CWinApp::OnIdlevirtual BOOL OnIdle( LONG lCount );返回值: 如果要接收更多的空闲处理时间,则返回非零值:如果不需要更多的空闲时间则返回0.参数: lC ...