上传的文本总出现乱码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了上传的文本总出现乱码相关的知识,希望对你有一定的参考价值。

本人是笔记本无线上网卡上网用户,使用的是移动GPRS网络,SIM卡是专用的河北全球通包月卡。网卡是北大青鸟的,目前使用的代理服务器是127.0.0.1 端口号6000。
我在各个论坛回答问题或提问的时候总是出现乱码?修改答案时可以纠正过来。但再修改答案时又出现乱码。这样奇数次修改答案是正常码,偶数次修改答案是乱码。这给我本来就不快的上网效率又加上沉重的负担。
请各位大侠帮忙想想办法,到底是我的电脑设置有问题,还是代理服务起不好?如果是代理服务起不好的话,麻烦各路豪杰推荐我几个好用的代理服务起。
在百度知道发送文字也有类似问题。在登陆其他网站、下载软件时没出现过下载后的文件无法打开、无法解压的现象。
编码中的字体改过了,发现如下问题: 同样是在百度知道上,某些网页用简体中文(GB2312)、简体中文(Hz)能正常打开,而用UNICODE(UTF-8)则是乱码,但某些网就是反过来的。
在用简体中文(GB2312)能正常打开的窗口中,我补充了本道问题,依旧发上去的是乱码.
重新输入时我在编辑窗口用中UNICODE,或UNICODE(UTF-8)察看.则乱码变成如下依稀可辨的码:

在稓庡???㏞쏑㍁文字也??类似问领ӀЧ??登陆其他网站、下载软件时没???现豁丄̽?后的文件法케、无法解ա?的现象。
编码中的字体改豁了,发现如果用然但˸?文GB2312)、然但˸?文Hz)和繁体中文(Big15)等编码巄,就甭提丂???了,我下载下来的网页都看丕??򯼌全是乱????????过我发现甼/textarea></div>
<div><input type="submit" name="Submit" value="̡??" class="btn"></div>
</div>
<textarea id="titleContent" style="display:none">ɏ???Ďı?ל??҂뼯textare

参考技术A 你试试把语言栏更改看看``
控制面板``区域和语言``区域选项``改为中文(新加坡)

```
代理的话`
去下载腾讯加速器吧`效果不错`
也是代理的``
但是是腾讯服务器代理的喔!效果相当好
参考技术B 我想是代理服务器的问题.如果电脑配置异常是不会出现乱码又能再正确显示的.你换过个代理应该有用 参考技术C 我以前给国外的朋友写信的时候那边收到的全是乱码,
于是我就把写的信直接抓个图给发了过去!
参考技术D 相信是你系统的问题,把所有设备换一台电脑试试看。 第5个回答  2007-01-11 编码器有问题的,在网页上的菜单点,查看-编码-简体中文,你试试行不行

关于HttpClient上传中文乱码的解决办法

使用过HttpClient的人都知道可以通过addTextBody方法来添加要上传的文本信息,但是,如果要上传中文的话,或还有中文名称的文件会出现乱码的问题,解决办法其实很简单:

第一步:设置MultipartEntityBuilder的编码方式为UTF-8。

builder.setCharset(Charset.forName(HTTP.UTF_8));//设置请求的编码格式 

第二步:创建ContentType对象,指定UTF-8编码。

ContentType contentType= ContentType.create(HTTP.PLAIN_TEXT_TYPE, HTTP.UTF_8); 

第三步:使用addPart+ StringBody代替addTextBody。如:

StringBody stringBody=new StringBody("中文乱码",contentType);
builder.addPart("test",stringBody);

附上完整代码:

ContentType contentType = ContentType.create(HTTP.PLAIN_TEXT_TYPE, HTTP.UTF_8);      
HttpClient client=new DefaultHttpClient();// 开启一个客户端 HTTP 请求 
HttpPost post = new HttpPost(url);//创建 HTTP POST 请求  
MultipartEntityBuilder builder = MultipartEntityBuilder.create();
builder.setCharset(Charset.forName(HTTP.UTF_8));//设置请求的编码格式
builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);//设置浏览器兼容模式
int count=0;
for (File file:files) {
//            FileBody fileBody = new FileBody(file);//把文件转换成流对象FileBody
//            builder.addPart("file"+count, fileBody);
    builder.addBinaryBody("file"+count, file);
    count++;
}        
builder.addTextBody("method", params.get("method"));//设置请求参数
builder.addTextBody("fileTypes", params.get("fileTypes"));//设置请求参数
StringBody stringBody=new StringBody("中文乱码",contentType);
builder.addPart("test", stringBody);
HttpEntity entity = builder.build();// 生成 HTTP POST 实体      
post.setEntity(entity);//设置请求参数
HttpResponse response = client.execute(post);// 发起请求 并返回请求的响应
if (response.getStatusLine().getStatusCode()==200) {
    return true;
}
return false;

原文地址

以上是关于上传的文本总出现乱码的主要内容,如果未能解决你的问题,请参考以下文章

关于HttpClient上传中文乱码的解决办法

php 上传文件名出现乱码

rz上传文件出现乱码

新建文本文档出现乱码

windows中的txt文件上传到linux中,打开出现中文乱码

关于windows下程序开发的中文乱码问题小结