字符网页输出的一些测试

发表于:2009-12-03 14:47

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:shiwei0124    来源:51Testing软件测试博客

  unicode环境下

C_Error c_err(_T("getmap功能尚未开放"));  
c_err.senderror(); 
C_Error c_err(_T("getmap功能尚未开放"));
c_err.senderror();

int C_Error::senderror()  
{  
    fprintf(stdout, "Content-Type:text/html;charset=utf-8;");  
    fprintf(stdout, "\n\n");  
    fprintf(stdout,"%ws",serror);  
    return 0;  
}  
 
//此时输出正常   //PS:汗,这里也是乱码,可能是没清缓存的原因,导致第一次测试的结果还是正常的,实际上汉字是乱码,差点以为是fprintf会帮忙转换  =_=! 

int C_Error::senderror()  
{  
    fprintf(stdout, "Content-Type:text/html;charset=utf-8;");  
    fprintf(stdout, "\n\n");  
    fprintf(stdout,"%s",serror);  
 
    //_tprintf(serror);  
    return 0;  
}  
 
//此时输出为g, 后面已经没了 

int C_Error::senderror()  
{  
    fprintf(stdout, "Content-Type:text/html;charset=utf-8;");  
    fprintf(stdout, "\n\n");  
    //fprintf(stdout,"%s",serror);  
 
    _tprintf(serror); //此时等于 wprintf(serror);  
    return 0;  
}  
 
//此时中文为乱码 

int C_Error::senderror()  
{  
    fprintf(stdout, "Content-Type:text/html;charset=utf-8;");  
    fprintf(stdout, "\n\n");  
    //fprintf(stdout,"%s",serror);  
 
    _tprintf(_T("%ws"),serror); //_tprintf为wprintf,且"%ws"必须加_T(),否则报错  
    return 0;  
}  
 
//此时不管 为"%ws" 还是 "%s" 输出遇到中文都为乱码  
//若 charset=utf-8 改成gbk,则不管"%ws"和"%s"都能正常输出 

int C_Error::senderror()  
{  
    fprintf(stdout, "Content-Type:text/html;charset=gkb;");     
    fprintf(stdout, "\n\n");  
    fprintf(stdout,"%ws",serror);  
    //_tprintf(_T("%s"),serror);  
    //_tprintf(serror); //此时等于 wprintf(serror);  
      
    return 0;  
}  
// charset=gkb 此时输出正常 

int C_Error::senderror()  
{  
    fprintf(stdout, "Content-Type:text/html;charset=gkb;");  
    fprintf(stdout, "\n\n");  
    //fprintf(stdout,"%ws",serror);  
    //_tprintf(_T("%s"),serror);  
    _tprintf(serror); //此时等于 wprintf(serror);  
      
    return 0;  
}  
//charset=gkb 此时输出正常 

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号