A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王梁星 中级黑马   /  2012-10-23 22:33  /  2588 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. //RegServer.java
  2. import java.io.*;
  3. import java.net.*;
  4. class RegServer{
  5.   public static void main(String[] args)throws Exception{
  6.     ServerSocket ss=new ServerSocket(1200);
  7.     Socket s=ss.accept();
  8.     OutputStream out =s.getOutputStream();
  9.     PrintWriter pw=new PrintWriter(out,true);
  10.     pw.println("<font size=7 color=green>register seccess</font>");
  11.     s.close();
  12.     ss.close();
  13.   }
  14. }
复制代码
java 服务端打开,浏览器连接服务端后,返回<font size=7 color=green>register seccess</font>。但是浏览器并没有解析该段代码,照原样显示。而且字体颜色还是黑色。若register seccess改为中文则乱码。

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 赞一个!

查看全部评分

6 个回复

倒序浏览
printWriter中的println方法是将数据值的表现形式写入到目的地,所以会打印出<font size=7 color=green>register seccess</font>;而这个方法虽然保证了数据的表现形式,但是字节数不能保证了,比如pw.println(97),它写入的就是97,本来int类型四个字节,可是在这里就只有两个字节了,所以输入中文时会出现乱码。
回复 使用道具 举报
张榆 发表于 2012-10-24 00:55
printWriter中的println方法是将数据值的表现形式写入到目的地,所以会打印出register seccess;而这个方法 ...
  1. <html>
  2. <head>
  3.   <title>jsformpractice</title>
  4.   <meta http-equiv=content-type content="text/html; charset=utf-8">
  5. </head>
  6. <body>
  7. <fieldset >
  8. <legend>注册区域</legend>
  9. <form action="http://127.0.0.1:1200" method="post">
  10. <table border="2" bordercolor="#0066FF" width="35%" cellpadding="5" cellspacing="0">
  11.          <tr>
  12.       <td colspan="2">注册页面</td>         
  13.          </tr>
  14.          <tr>
  15.       <td>用户名:</td>         
  16.       <td>
  17.        <input type="text" name="user"
  18.       </td>         
  19.          </tr>
  20.          <tr>
  21.       <td>密码:</td>         
  22.       <td>
  23.        <input type="password" name="psw"
  24.       </td>         
  25.          </tr>
  26.          <tr>
  27.       <td>性别:</td>         
  28.       <td>
  29.        <input type="radio" name="sex" value="man">man
  30.        <input type="radio" name="sex" value="female">female
  31.       </td>         
  32.          </tr>
  33.          <tr>
  34.       <td>技术:</td>         
  35.       <td>
  36.        <input type="checkbox" name="skill" value="java">java
  37.        <input type="checkbox" name="skill" value="html">html
  38.       </td>         
  39.          </tr>
  40.          <tr>
  41.       <td>国家:</td>         
  42.       <td>
  43.        <select name="contry">
  44.                          <option value="none">--choose your contry--</option>
  45.                          <option value="ch">China</option>
  46.                          <option value="en">English</option>
  47.                          <option value="us">America</option>
  48.                   </select>     
  49.       </td>         
  50.          </tr>
  51.          <tr>
  52.       <td colspan="2">
  53.        <input type="submit" value="提交数据" />
  54.        <input type="reset" value="清除数据"/>
  55.       </td>         
  56.          </tr>
  57. </table>
  58. </form>
  59. </fieldset>

  60. </body>
  61. </html>
复制代码
这是客户段代码,若是<form action="http://127.0.0.1:1200" method="post">中用get方法发送给服务端,才会出现乱,而用post方法不会出现乱码。能不能讲下这个

还有一点是,我看比老师的javascript课程03,他的就正常解析了,返回register seccess。我清楚,我的哪里问题
回复 使用道具 举报
王梁星 发表于 2012-10-24 12:26
这是客户段代码,若是中用get方法发送给服务端,才会出现乱,而用post方法不会出现乱码。能不能讲下这个
...

一般中文传输都是用post方法的,用get方法是会出乱码的!
回复 使用道具 举报
汪坤洋 发表于 2012-10-24 12:39
一般中文传输都是用post方法的,用get方法是会出乱码的!

这个我已经明白,但是为什么我的浏览器解不了服务端发来的数据?你试下,看在你的机器行不行?
回复 使用道具 举报
服务端不是建servrce么?然后获取客户端传递内容!在转向的啊!你好像是建立一个普通类的啊!
回复 使用道具 举报
汪坤洋 发表于 2012-10-24 12:50
服务端不是建servrce么?然后获取客户端传递内容!在转向的啊!你好像是建立一个普通类的啊! ...

详细说说,:)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马