论坛首页 Java企业应用论坛

jspsmart字符编码的问题

浏览 3200 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-05-21  
   使用jspsmart上传文件很方便,但是如果使用UTF-8编码,会出现乱码。对于使用   UTF-8编码的项目很不方便。GB2312编码格式不会出现乱码。
    今天看了一下,只需要修改一个地方就可以解决问题。
    首先反编译SmartUpload类,只需要修改一个私有方法,方法修改如下:
   
private String getDataHeader() {
		int i = m_currentIndex;
		int j = 0;
		for (boolean flag1 = false; !flag1;)
			if (m_binArray[m_currentIndex] == 13
					&& m_binArray[m_currentIndex + 2] == 13) {
				flag1 = true;
				j = m_currentIndex - 1;
				m_currentIndex = m_currentIndex + 2;
			} else {
				m_currentIndex++;
			}
		//修改开始
		String s = null;
		try {
			//修改代码,首先得到响应的字符编码类型,然后对得到的字符串进行编码。
			String encode = m_response.getCharacterEncoding();
			if(encode.equalsIgnoreCase("UTF-8")) {
				s = new String(m_binArray, i, (j - i) + 1, "UTF-8");
			} else {
				s = new String(m_binArray, i, (j - i) + 1);
			}
			
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		//修改结束
		return s;
	}

    修改之后UTF-8,GBK,GB2312都不会乱码。如果有问题,请联系我!谢谢!
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics