ifstream打开文件路径(ifstream无法打开文件)

ifstream打开文件路径(ifstream无法打开文件)1 2 created 2008 05 10 3 created 10 5 2008 23 56 4 filename k sj fstreamTest fstreamTest main cpp 5 file path k

大家好,我是讯享网,很高兴认识大家。



 1: /*

讯享网
讯享网 2:  created: 2008/05/10
 3:  created: 10:5:2008 23:56
讯享网 4:  filename: k:/sj/fstreamTest/fstreamTest/main.cpp
 5:  file path: k:/sj/fstreamTest/fstreamTest
讯享网 6:  file base: main
 7:  file ext: cpp
讯享网 8:  author: Gohan
 9: */
讯享网 10: #include <tchar.h>
 11: #include <fstream>
讯享网 12: #include <iostream>
 13: using namespace std;
讯享网 14: int main()
 15: {
讯享网 16: /*/
 17: /* 方法1,使用_TEXT()宏定义将字符串常量指定为TCHAR*类型 /
讯享网 18: / 如果是我,首选此类型 */
 19: /*/
讯享网 20: fstream file;
 21: file.open(_TEXT(“c://测试//测试文本.txt”));
讯享网 22: cout<<file.rdbuf();
 23: file.close();
讯享网 24: 
 25: /*/
讯享网 26: /* 方法2,使用STL中的locale类的静态方法指定全局locale /
 27: / 使用该方法以后,cout可能不能正常输出中文,十分蹊跷 /
讯享网 28: / 我发现了勉强解决的方法:不要在还原区域设定前用cout或wcout 输出中文 /
 29: / 否则后果就是还原区域设定后无法使用cout wcout输出中文 */
讯享网 30: /*/
 31: locale::global(locale(“”));//将全局区域设为操作系统默认区域
讯享网 32: file.open(“c://测试//测试文本2.txt”);//可以顺利打开文件了
 33: locale::global(locale(“C”));//还原全局区域设定
讯享网 34: cout<<file.rdbuf();
 35: file.close();
讯享网 36: 
 37: /*/
讯享网 38: /* 方法3,使用C函数setlocale,不能用cout输出中文的问题解决方法同上 */
 39: //
讯享网 40: setlocale(LC_ALL,“Chinese-simplified”);//设置中文环境
 41: file.open(“c://测试//测试文本3.txt”);//可以顺利打开文件了
讯享网 42: setlocale(LC_ALL,“C”);//还原
 43: cout<<file.rdbuf();
讯享网 44: file.close();
 45: }


讯享网

小讯
上一篇 2025-05-04 22:45
下一篇 2025-05-31 16:00

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/151081.html