解决方案 »

  1.   

    另外,其中有个  filename="太阳花.jpg"
    这里出现了中文,也需要被编码,又该怎么办呢?
      

  2.   

    需要指出的是,如果 Form 不指定  accept-charset="utf-8"  时,各种浏览器,将默认以 GB2312 编码文本数据,且并不会显示告知服务器用了这个字符集这会出现问题的。当我往国外网站,提交一段中文文字,而该网站并未在表单里,指定可接受的字符集时,发出去肯定是乱码。
    互联网,难道不可以规范一下,当表单不指定字符集时,全都默认采用 utf-8 就好啦。
      

  3.   

    表单头加上:
    <form method="post" enctype="multipart/form-data" acceptcharset="UTF-8" > 
    然后使用以下参数启动 jvm:
    -Dfile.encoding=UTF-8
      

  4.   

    我说的,主要是桌面爬虫程序,或者自动提交表单的客户端程序
    而非Web服务器如何配置 UTF-8
      

  5.   

    http client 请求?
    你这样试试:
    Request.setHeader(CoreProtocolPNames.HTTP_CONTENT_CHARSET, Consts.UTF_8);或者这个:
    Request.Post("someurl")
            .useExpectContinue()
            .version(HttpVersion.HTTP_1_1)
            .bodyString("Important stuff", ContentType.create("text/plain", Consts.UTF_8))
            .execute()
            .returnContent().asBytes();    
      

  6.   

    你加上, <%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
      

  7.   


    楼主谁告诉你各种浏览器默认GB2312了另外,你现在的爬虫用的是什么类库,主要爬的网站又是哪些?文件名有多种编码格式,但是各种浏览器支持的种类不一。不过你是爬虫,理论上服务器应该都支持。
    filename=*UTF8''%E5%A4%AA%E9%98%B3%E8%8A%B1.jpg
    http://stackoverflow.com/questions/93551/how-to-encode-the-filename-parameter-of-content-disposition-header-in-http