回 帖 发 新 帖 刷新版面

主题:html传递jsp页面中文乱码,急

<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>添加图片新闻&nbsp;</title>
</head>
<body>
<form name="test" action="do_picnews.jsp" method="post" enctype="multipart/form-data" onSubmit="javascript:KindSubmit();">
  <table border="0">
    <tr>
      <td>&nbsp;文章标题:<input type="text" name="title3" size=20></td>
    </tr> 
    <tr>
    <td>选择图片:<input type="file" name="file2" size="15"></td>
   </tr>
      <td>文章内容:<div style="font-size:12px;margin-bottom:5px;"></div>
          <input type="hidden" name="content3" value="">
          <script type="text/javascript" src="./KindEditor.js"></script>
      <script type="text/javascript">
var editor = new KindEditor("editor");
editor.hiddenName = "content3";
editor.editorWidth = "600px";
editor.editorHeight = "400px";
editor.show();
function KindSubmit() {
    editor.data();
}
    </script>      </td>
    </tr>
  </table>
  <div align="center">
<input type="submit" value="Submit">
</div>
</form>

</body>
</html>






<%@ page contentType="text/html; charset=utf-8" language="java" import="infoweb1.DBConnect" import="java.util.Calendar" import="java.text.DateFormat"%>
<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" /> 
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>上载附件 </title>
</head>
<body>
  <center>在上传文件... 
<%
 request.setCharacterEncoding("utf-8"); 
  Calendar   c   =   Calendar.getInstance();//可以对每个时间域单独修改   
          int   year   =   c.get(Calendar.YEAR);   
          int   month1   =   c.get(Calendar.MONTH);  
          int month = month1 + 1;
          int date1  =   c.get(Calendar.DATE);
        
          int   hour   =   c.get(Calendar.HOUR_OF_DAY);   
          int   minute   =   c.get(Calendar.MINUTE); 
        
          int   second   =   c.get(Calendar.SECOND);   
          System.out.println(year   +   "-"   +   month   +   "-"   +   date1   );   
          String date5 = year   +   "-"   +   month   +   "-"   +   date1 ;
          //System.out.println(date5);
          java.util.Date dt=null;
             DateFormat df=DateFormat.getDateInstance();
//上载附件

             try
{

 DBConnect DBC1 = new DBConnect();
mySmartUpload.initialize(pageContext); 
mySmartUpload.upload();
   String title2 = mySmartUpload.getRequest().getParameter("title3");
         String content1 = mySmartUpload.getRequest().getParameter("content3");
mySmartUpload.save("/upload"); 
String fn = mySmartUpload.getFiles().getFile(0).getFileName();
mySmartUpload.getFiles().getFile(0).saveAs("/upload/."+fn) ;
mySmartUpload.save("/upload");//文件保存的目录为upload
System.out.println(fn);


String path = (fn);
System.out.println(path);
 dt=df.parse(date5);
 String str1 = "insert into doc (path, time,title,content,type) values('"+path+"', '"+df.format(dt)+"','"+title2+"','"+content1+"','"+2+"')";
       System.out.println(str1);
        DBC1.excuteUpdate(str1);
System.out.println(df.format(dt));

out.println("已经成功上传了文件");
}
catch(Exception e)
{
e.printStackTrace();
}
          %>
<a href=pic_news.html>继续添加</a>
</body>
</html>

回复列表 (共5个回复)

沙发

中文要是通过url方式进行传递需要进行编码,如果通过提交表单方式传递要设定jsp的编码方式和提交表单的编码方式,你上网搜下资料很多。

板凳

看帖回帖!









-------------------
上海[url=http://www.kohler-sh.com/]科勒卫浴[/url]公司
http://www.kohler-sh.com/
-- 专业销售科勒卫浴产品

3 楼

服务端增加一个字符集过滤器应该就没问题了吧,这样只能对页面的post方法提交转码有效,get方法提交需要手动转码……

4 楼


将charset的c改为大写的

5 楼


charset改为GBK

我来回复

您尚未登录,请登录后再回复。点此登录或注册