`

windows的CP_ACP代码页与CP_OEMCP代码页区别(转载)

 
阅读更多

windows的CP_ACP代码页与CP_OEMCP代码页区别
1、对于CJK(多字节编码)的环境(泰文,日文,韩文,中文),CP_ACP与CP_OEMCP没有区别。
2、对于非 CJK(单字节编码)的环境这两个代码页不同
1)对应的实际代码页不同,例如English-US的环境,ACP对应1252,OEMCP而437。
2)一个字节能表示的数值范围是(0-255),对于小于128的编码,437和1252对应的字符是一样的。
3)对于大于128的编码,是不一样的,有可能有些OEM字符(大于128的编码)在437中不存在,有些ASCII(大于128的编码)字符在1252中不存在。
4)相同的编码,对应的字符有可能不同。
5)同理,相同的字符对应的编码有可能不同。
3、windows的文件操作的API默认使用ASCII代码页(即CP_ACP),设备的操作的函数使用OEM代码页(即CP_OEMCP)。
结论: 如果与设备没有关系(即不读写设备)那么使用ACP,否则使用OEMCP(注意读写console的函数是对console设备的操作,所以默认使用OEMCP)。
文件读写API使用的代码页可以通过调用API来实现在CP_ACP与CP_OEMCP更替的。Console的操作也可以通过API来实现CP_ACP与CP_OEMCP更替的

分享到:
评论

相关推荐

    EditPlus中PHP的编码自动完成功能及配置文件stx_acp

    解压包包括.stx文件和.acp文件,.stx文件用于语法文件,.acp文件用于自动完成功能的.解压后,将两个文件放到editplus的安装目录,然后运行editplus,在工具栏->工具->参数设置->设置&语法里的文件类型选择php,选择之后,...

    lsi_acp34xx_elpaso.rar

    LSI ACP34xx El Paso是针对嵌入式系统设计的一款高性能的串行SCSI (SAS) 控制器,常用于存储解决方案。VxWorks是一款实时操作系统(RTOS),由Wind River Systems开发,广泛应用于航空、航天、通信、医疗等对实时性...

    acp.rar_ACP

    标题中的"acp.rar_ACP"表明这是一个与ACP(可能是“自动分类程序”或某种特定算法的缩写)相关的RAR压缩文件。描述提到这是一个用MATLAB编写的程序,用于实现ACP算法。MATLAB是一种强大的数学计算环境,常用于科学...

    php_acp.dll

    acp缓存开发,dll文件,适合php5.3使用

    xul_ctl_acp_stx

    文章:http://blog.csdn.net/z6482/article/details/7430198中所使用...包含editplus的acp文件、stx文件、ctl文件以及一个xul模板文件。欢迎下载使用,如使用中有任何问题请联系我:zhcbfly@qq.com。或者到我博客中留言

    C++字符转化.pdf

    - `CodePage`参数指定了输入字符串的编码类型,如CP_ACP(ANSI代码页)、CP_MACCP(Macintosh代码页)、CP_OEMCP(OEM代码页),或者如CP_UTF7和CP_UTF8等特定编码。 - `dwFlags`通常设置为0,但可以根据需要指定...

    空时自适应信号处理_空时自适应_ACP_雷达_空时自适应信号处理_

    这些文件很可能是实现STAP算法的MATLAB代码,分别对应不同版本的AEP方法和ACP方法。通过对这些代码的分析和运行,我们可以进一步理解和优化STAP在实际雷达系统中的应用。 综上所述,空时自适应信号处理在雷达系统,...

    ACPSample_B2C.zip_/ACPSample_B2C 404_ACPSample_B2C_ableh1q_acp_

    在银联网关支付的基础上,修改一些注释,把原来jsp里的java代码,挪到了servlet里。更方便第一次对接银联的开发人员快速容易的对接成功。

    CString转UTF8,UTF8转CString

    - 然后将宽字符转换回多字节字符,这里使用的代码页为系统默认的ANSI代码页(CP_ACP)。 - 最终将转换后的字符数组复制到`CString`对象中。 2. **注意事项**: - 转换过程中需要注意释放临时使用的内存资源。 -...

    TSP_ACP.zip_ACO_ACO-TSP_aco tsp_tsp

    ACO for TSP optimazation

    (UNICODE 与非UNICODE导致的问题)CString,TCHAR和CHAR类型的互转.docx

    这里的`CP_ACP`是代码页常量,代表当前系统默认的ANSI代码页,`-1`表示转换所有字符,包括结束符。 相反,如果需要将`CHAR`类型转换为`TCHAR`,可以使用`MultiByteToWideChar`函数,如`CharToTchar`函数所示: ```...

    stap_acp.rar_STAP_space time idl_空时联合_空时自适应_辅助通道

    联合空时自适应处理算法仿真之辅助通道法程序

    EditPlus中PHP的编码自动完成acp_配置文件stx

    解压包包括.stx文件和.acp文件,.stx文件用于语法文件,.acp文件用于自动完成功能的.解压后,将两个文件放到editplus的安装目录,然后运行editplus,在工具栏->工具->参数设置->设置&语法里的文件类型选择php,选择之后,...

    acp_commander_gui_156.jar

    acp_commander.jar升级版功能相同

    char与wchar_t互转

    - `CP_ACP`表示使用系统默认的ANSI代码页进行转换,这通常适用于Windows平台。 - 对于跨平台应用,需要考虑不同操作系统下的字符编码转换方式。 #### 总结 本文详细介绍了如何在C++中实现`char`与`wchar_t`之间的...

    Unicode下CString与char*之间的转换(vs2008绝对实用)

    这里,`CP_ACP`代表当前系统的ANSI代码页,`WideCharToMultiByte`函数将宽字符转换为多字节字符。 2. 使用ATL/MFC中的函数`T2A`或`W2A`: ```cpp CString str = _T("D://校内项目//QQ.bmp"); USES_CONVERSION; ...

    UC_Trans.rar_Windows编程_Visual_C++_

    在C++中,可以使用`MultiByteToWideChar`函数,该函数接受一个代码页(这里是GB2312,代码页值为936)和输入的多字节字符串,返回宽字符(Unicode)字符串。记得设置适当的标志,如MB_ERR_INVALID_CHARS,以处理无效...

    EditPlus代码自动完成所需的.acp文件

    `*.acp`文件是EditPlus中的代码自动补全配置文件,用于扩展其内置的代码提示功能。在本文中,我们将详细探讨如何利用这些`.acp`文件提高开发效率。 1. **什么是`.acp`文件?** `.acp`文件是EditPlus中的自定义代码...

    培训文档_5G规划优化服务解决方案_ACP CSI&RANK优化(基于路测).pptx

    5G网络优化

    CString-const-char-char-to-WCHAR.rar_CString To Char_char wchar_

    在转换前,你需要确定目标编码格式,例如GBK或UTF-8,并设置适当的代码页。 ```cpp CString wideStr = L"你好,世界"; int byteCount = wideStr.GetLength() * sizeof(wchar_t) + 1; char* multiByteStr = new ...

Global site tag (gtag.js) - Google Analytics