• ?乱码问题


    改进后:

    本文参考:《java可供判断某字符串是什么编码的一行代码》

    搜索了很多关于request.获取客户端内容,然后保存到服务端后的??问题,确实都是些烂大街的解决乱码问题,但却没有搜索到一个关于?乱码的问题,最终解决了!

    一直以为?乱码是因为转换编码的问题,最后发现确实是转换的问题。不过发现是:

    当出现?时,说明你不需要对request获取的字符串进行编码!!!!!

    有的时候,越是以为很难解决的问题,其实确实自己走弯路,想得太多。

    注意:当转码出现???时,说明不需要转码,其本身就是你想要的目标码

    以下方法是转码的方法,仅供参考,该方法返回的是转换后的编码!!(最好的转码方式便是:把服务器编码和本地编码设置成一样,但有的时候,你不知道自己的代码会放在什么地方,所以,兼容问题必须解决)

    //将原对象传入,改变后返回字符串
    public String returnString(String string){
    byte [] bytes;
    String s = null;
    try {
    bytes = string.getBytes("ISO-8859-1");
    s = new String(bytes,"UTF-8");
    //1、如果字符串编码是ISO-8859-1,便返回重新编码后的字符串
    if(string.equals(new String(string.getBytes("ISO-8859-1"),"ISO-8859-1")))return s;
    } catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    //2、如果字符串编码不是ISO-8859-1,则直接返回原字符串
    return string;
    }

    注意:以上方法在本地能够成功,不知道为何修改服务端servler.xml编码也不行,希望指正,虽然问题没完全解决,但还将继续研究。

    最后,想说的是:网上设置头部编码返回的方法,很多很多,或者修改服务器编码,但发现改了对上面我出的错无法统一解决!!所以多多写代码,总结,确实才是解决之道!!!!,太久没写代码,感慨颇多!若总结有问题,望指正!(只写了总结,没将过程写出来,望谅解,只有自己认真写过各种错误,才能提高自己的理解)

  • 相关阅读:
    Dynamic CRM 2013学习笔记(四)单据编号及插件批量注册工具
    Dynamic CRM 2013学习笔记(三)快速创建实体 EntityCreater
    Dynamic CRM 2013学习笔记(二)插件基本用法及调试
    Dynamic CRM 2013学习笔记(一)插件输入实体参数解析
    MVC 4 图片的上传及显示
    CRM 2013 批量更新two options的缺省值
    ASP.NET MVC & Web API Brief Introduction
    Mac下访问windows的共享文件夹
    解决Android编译so库出错问题
    解决Xcode 6 编译Cocos2d-x iOS项目失败
  • 原文地址:https://www.cnblogs.com/ciscolee/p/10006523.html
Copyright © 2020-2023  润新知