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 { /** ...
随机推荐
- 11 hbase源码系列(十一)Put、Delete在服务端是如何处理
hbase源码系列(十一)Put.Delete在服务端是如何处理? 在讲完之后HFile和HLog之后,今天我想分享是Put在Region Server经历些了什么?相信前面看了<HTab ...
- Android布局文件的载入过程分析:Activity.setContentView()源代码分析
大家都知道在Activity的onCreate()中调用Activity.setContent()方法能够载入布局文件以设置该Activity的显示界面.本文将从setContentView()的源代 ...
- Mesh BRep Shapes
Mesh BRep Shapes eryar@163.com Abstract. 当对OpenCASCADE的BRep表示法的数据结构有了一定的理解后,建议可以自己实现一个显示数据生成的功能,即网格剖 ...
- Android的矩阵(一):ColorMatrix
最近的学习过程中看到关于android色彩矩阵的内容,以前看到这部分内容,基本都是跳过的,没有认真细读. 自己给自己找的借口是: 1,大一学的矩阵内容早就忘的干干净净了,当时学的时候就很烦人,所以现在 ...
- 水 hdu5208 2015-04-20 21:03 36人阅读 评论(0) 收藏
题意: 选择数列中两个数,使得最大公约数最大 分析: 类似筛选法,因为数值不大,可以用b[i]计算i是多少个数的因子.最后取最大的i即可. #include <bits/stdc++.h> ...
- HTTP 各种特性应用(一)
一. CORS 预请求 允许方法: GET. HEAD. POST 这三个方法 不需要预请求. 允许 Content-Type text/plain. multipart/form-data. app ...
- UESTC 1584
http://acm.uestc.edu.cn/#/problem/show/1584 Washi与Sonochi的约定 Time Limit: 3000/1000MS (Java/Others) ...
- Bundles软件
Bundle 称为:软件集 或 打包捆绑软件(软件束) Bundle就是一组包含了文件集,软件包或许可程序产品的软件,它们组合在一起为了实现一个特定的功能 快速来列出系统bundle软件 sm ...
- ES6特性-带标签的模板字符串(tagged template)
tagged template: 加在模板字符串前面加一个标签(函数). let dessert = = '甜品' drink = '茶' let breakfast = kitchen`今天的早餐是 ...
- Xcode Git 客户端 + GitBucket 服务器 使用整合归纳
1.使用前说明: 不知道XCode,Git的请自行度娘,不知道GitBucket的,可参考文章:git 私服搭建-gitbucket 初试牛刀 2.创建Git步骤 1>在gitbucket创建账 ...