HttpURLConnection 如何设置编码格式为unicode提交参数 5C

公司用HttpURLConnection去调用第三方的接口,然后呢人家的编码格式是unicode格式的
而且还是http-get请求。我拿到的数据是utf-8的中文字符串。想问下大佬要怎么改。
谢谢谢谢!

0

7个回答

你是java 吧,想转换下字符的编码吧,
如果以前是GBK可以转到UTF-8
变量str以前是GBK编码
byte[] data=str.getBytes("GBK");
String strUTF8=new String(data, ‘UTF-8");

这要就可以互相转换了,如果是直接想用
byte[] data=strUTF8.getBytes("UTF-8");

2
c1728494009
chen-qingshan utf-8 转 unicode
大约一年之前 回复
0
c1728494009
chen-qingshan java
大约一年之前 回复

URL.openConnection()得到一个URLConnection对象,然后用URLConnection.setRequestProperty()来设置头信息

0
c1728494009
chen-qingshan setRequestProperty("Accept-Charset", "unicode");????
大约一年之前 回复

HttpURLConnection conn = (HttpURLConnection) realUrl.openConnection();

// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestMethod("POST");

out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");

可以指定body的编码

out = new PrintWriter(conn.getOutputStream());

PrintWriter不能指定编码,只能使用参数中的流(Stream)中的编码,是什么就用什么
https://blog.csdn.net/u010113247/article/details/52439895

0

这个应该好处理,使得两边编码一致即可。对面服务器没法改,那就只要修改自己的的编码方式了哦。楼上介绍的都可以

0
c1728494009
chen-qingshan 帮我看下我下面贴的代码
大约一年之前 回复
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setDoOutput(false);//post请求改为TRUE
    connection.setDoInput(true);
    connection.setRequestMethod("GET");
    connection.setUseCaches(false);
    connection.setInstanceFollowRedirects(true);
    connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
    connection.setRequestProperty("Charset", "utf-8");
    connection.setRequestProperty("Accept-Charset", "utf-8");
    connection.setReadTimeout(5000);
    connection.setConnectTimeout(5000);
    connection.connect();

    if (connection.getResponseCode() == 200) {
        BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));
        String line;
        while ((line = in.readLine()) != null) {
            result += line;
        }
        return result;
    }
0
u010076366
源头活水588 问题是否解决呢
大约一年之前 回复

URLEncoder.encode(str,"UTF-8");

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
HttpURLConnection 发送请求编码问题
HttpURLConnection conn = (HttpURLConnection) realUrl.openConnection(); // 发送POST请求必须设置如下两行 conn.setDoOutput(true); conn.setDoInput(true); conn.setRequestMethod("POST"); out = new OutputStream
HttpURLConnection中的乱码问题
1.现象:使用HttpURLConnection获取数据中的中文乱码:<title>鐧惧害涓?涓嬶紝浣犲氨鐭ラ亾</title>1)分析:这是因为eclipse默认的使用的是GBK格式,而通过HttpURLConnection获取的数据是utf-8格式,这时有两种解决办法2.解决办法1)第一种解决办法—将eclipse改成utf-8格式:windows->Perfer...
HttpURLConnection中文乱码分析和解决
HttpURLConnection中文乱码分析和解决产生中文乱码一般都是编码格式不匹配导致的,例如后台使用UTF-8编码格式,而移动端在接收数据时采用Iso 或者 GBK等格式,而往往我们所使用的网络编程工具在我们步明确指定编码格式的情况下给我们指定的默认格式并非UTF-8. 比如下面这段代码就会导致中文乱码URL url = new URL(RequestURL); HttpURLConnect
UrlConnection post请求中文参数乱码问题
UrlConnection post请求中文参数乱码问题
HttpURLConnection 传递参数提交(加代理方式)
    public String sendPostRequest(String url,Map<String,String> parameters){          // Post请求的url,与get不同的是不需要带参数          String result="";        try {        URL postUrl = new URL(url);     ...
解决HttpURLConnection请求时传中文参数乱码问题
解决HttpURLConnection请求时传中文参数乱码前提: 项目的编码是utf-8, 即要保证项目下所有文件的编码都是utf-8 示例代码如下:/** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletR
form表单提交以gbk编码
关于编码的 form 标签的属性accept-charset:可以指定form编码形式enctype: 规定在发送表单数据之前如何对其进行编码。有三种设置类型默认为application/x-www-form-urlencoded:发送前编码所有字符multipart/form-data:不对字符编码,包含文件上传控件的表单时,必须使用该值text/plain:空格转换为 "+" 加号,但不对特殊...
HttpURLconnection使用POST方式提交JSON数据给服务器
HttpURLconnection使用POST方式提交JSON数据给服务器最原始的味道,使用H团体票URLconnection提交JSON数据给后台服务器。此处留下标记。 将javabean对象转换成Json字符串。 通过HttpUrlconnection提交数据。 getRequestCode返回415 1.javabean转换成JSON字符串工具类。这里使用Gson解析器,请各位自行添加依赖包。
URLConnection POST方式传参总结
URLConnection POST方式传参总结 HTTP Post方法用于向服务器提交数据,写法比Get方法稍微复杂那么一点,这里总结一下Post方式传参的几种方法1、  一个或者多个参数,以form形式提交,提交形式如“name=zhangsan&password=123456”,提交代码如下(只是关键语句,不是完整代码): URLpostUrl = new URL("your url...
httpUrlConnection post请求 传参数 及客户端接收参数
//模拟客户端请求 public class ServletMain {       public static void main(String[] args) {         TestBean tb=new TestBean("liyangyang","25");         Gson gson=new Gson();         //传入的参数         String da...
HttpURLConnection以post传数据时中文乱码的一个解决方法
今天在测试自己写的接口时,后台使用HttpURLConnection,以post方式向服务器的接口传数据。但服务器得到的中文是乱码。度娘一早上没找到合适的解决方法。中午一觉醒来随便把 out.writeBytes(string);  改成      out..write(string.getBytes());    就解决了。(简直是天了噜)。 改了之后的部分代码如下: try { UR
Java 通过HttpURLConnection Post方式提交xml,并从服务端返回数据
这里面简单介绍下,HttpURLConnection连接服务器,并返回数据客户端代码java代码:import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; public class PostXml { public stati
HttpURLConnection(File) POST请求发送参数和上传文件
package com.face; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import ...
httpurlconnection使用post传值时web接口接收不到值
最近好久没有写博客了,因为上班的原因。今天想做一个点餐系统,移动版和服务器版。数据使用json数据进行传输。但是碰见一个难题就是如何让移动端将数据传输给服务器,然后进行更新到数据库。进入正题: 因为我使用的是httpurlconnection,大家都知道get请求的参数是放在url后面以?开头&分割。但是如果我们参数多或者是参数不想让别人知道的时候我们就要使用post,因为他的参数是放在相
Android中利用HttpURLConnection发送Post请求并添加参数的写法
利用HttpURLConnection提交参数的时候,只能使用IO流的方式来进行提交。 URL url = new URL(“http://172.60.50.141:8080/ems/regist.do“); HttpURLConnection connection = (HttpURLConnection) url.openConn
解决HttpUrlConnection post数据中中文出现乱码问题
-
ajax请求的数据存在中文乱码,如何设定编码格式
先描述一下场景 1.ajax请求一个 js 后缀的接口 2.接口里编码用的 GBK 3.当前页面HTML页面编码是 UTF-8 问题: 1.由于当前HTML页面编码是 UTF-8,所以在请求到数据(GBK格式)之后,放到页面上显示的全是乱码 2.设置<meta charset=“UTF-8“> 则页面中的静态的中文字符变为乱码   所以我需要把ajax到的数据单独用GB...
iOS POST请求,参数编码问题,参数编码GBK
编码问题-UTF8 NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:url]]; request.HTTPMethod = @"POST"; request.HTTPBody = [params dataUsingEncoding:encoding]; 当 ...
VBA 向文件写入简单数据(默认编码为ANSI或者Unicode)
VBA 向文件写入简单数据(默认编码为ANSI或者Unicode)
datagrid 编码用中文显示
下文中 isreply  在数据库中的编码是: 000(未回复)、001(已回复) 由于只有两种情况,故写法如下:  $("#reply").datagrid({               rows:10,               pageList:[5,10,15,20],             page:1,             toolbar:"#toolbar",
Web Api 输出Json格式数据,中文要进行Unicode编码(模拟PHP的json_encode输出)
PHP中的json_encode方法,在5.4之前版本,中文会被unicode编码;5.4加入JSON_UNESCAPED_UNICODE,这个参数,设置不进行escape和unicode处理。
通过HttpURLConnection连接上传文件和参数
通过HttpURLConnection链接上传文件和参数,核心代码及操作步骤 public static String uploadFile(String url, Map<String, String> params, File file) {         // 换行,或者说是回车         //final String newLine = "\r\n";        ...
关于java字符集编码问题 URLConnection
今天遇到一字符集问题,用URLConnection来开启http访问获取数据的问题,对方是utf-8编码,到了自己这边,成了乱码。 <%@ page contentType="text/html; charset=GBK"%> 这是jsp头。 public String getDocumentAt(String urlString) { StringBuffer do...
java中以post方式提交,中文编码&解码问题
【项目需求】     一个页面,通过抓取数据,获取需要处理的数据的列表。对此列表数据进行单条或批量操作后,将数据存入到另一个表中,存入前先判断是否存在该条记录,存在则更新,不存在则插入。     【开发环境】     MyEclipse、Oracle     【开发问题】     在将记录存入到数据库时,遇到了一个问题,中文乱码~~~乱码真是一个老朋友,当初在.net开发用mysql数据
Java HttpURLConnection post set params 设置请求参数的三种方法 实践总结
/** * the first way to set params * OutputStream */ byte[] bytesParams = paramsStr.getBytes(); // 发送请求params参数 ...
使用HttpURLConnection采用get方式或post方式请求数据
使用URLConnection提交请求: 1.通过调用URL对象openConnection()方法来创建URLConnection对象 2.设置URLConnection的参数和普通的请求属性 3.如果只是发送GET方式请求,使用connet方法建立和远程资源之间的实际连接即可;如果发送POST方式的请求,需要获取URLConnection实例对应的输出流来发送请求参数。 4.远程资源变
使用InputStreamReader解决格式乱码
/** * 使用InputStreamReader解决格式乱码! */ import java.io.*; public class InputStreamReaderTest { public static void main(String[] args) throws IOException { FileInputStream file = new FileIn...
使用HttpURLConnection通过post请求服务器时,URLEncode编码的必要性
通过Post提交表单数据时,数据类型为x-www-urlencoded,提交到服务器的数据服务器默认是通过URLEncoder.encode()编码过得,所以服务器处理时会用URLDecoder.decode(s)进行解码,此时传输的数据就不能包括一些特殊字符。如+、%2b 原因:通过URLEncoder.encode()空格会被编码成+号,+号会被编码成%2B,所以如果包括+,%2B的元数据,
关于eclipse中properties文件中文提交到SVN后变成unicode编码
项目中properties文件中文显示 unicode编码问题 properties文件中的中文一直显示的是unicode编码,项目和properties文件都是utf-8编码。百度了之后下载了一个插件如下: 打开properties文件后,unicode编码显示成了中文,可是上传到svn后又变成了Unicode的编码,以为是svn的原因找了很久没有解决。今天又重新试了下终于解决了步骤如下:
HttpURLConnection发送实体数据到服务端
使用场景:     客户端需要将实体数据同步到平台库,这里采用的是HTTP的形式,以下用户数据同步到平台库为例 1.需要导入xstream.jar 2.定义请求和响应的父类实体数据,方便后续编码 /** * 请求响应的父类对象 */ public class Generic { public Header header; }   3.定义消息头实体,用于存放请求的...
设置vim 支持中文编码GB2312和Unicode编码UTF8
  转载自:扶凯[http://www.php-oa.com] 本文链接: http://www.php-oa.com/2008/04/29/vimyuyanshezhi.html   Vim语言设置,烦啊,编码可能一直是操作系统要处理的一个麻烦问题. 我的Linux上有不少的gb2312 的文件.没法子,只有让Vim也支持他啦。 如果你的系统你自己的主目录中有.vimrc就加入下面...
Java 通过HttpURLConnection Post方式提交json,并从服务端返回json数据
这个技术和xml差不过,主要是服务端代码稍微修改,客户端代码修改部分传递参数就可以完成,但在之前需要导入json所需要的jar包。 PostJson.java代码package PostPager;import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import ja
HttpURLConnection 发送PUT请求,设置请求头参数 json请求体
http请求有八中方法GET,POST,HEAD,PUT,DELETE,OPTIONS,TRACE,CONNECT,GET和POST比较常用,由于项目开发需要,开始自己研究PUT请求方法,其实和POST请求方法差不多。下面来讲一下常用的请求方法和不常用的PUT方法。    一、HEAD方法跟GET方法相同,只不过服务器响应时不会返回消息体。一个HEAD请求的响应中,HTTP头中包含的原信
HttpURLConnection 多文件上传 和 参数
修改过的: 客户端: import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL...
设置form提交的编码
在某些情况下,我们的form需要提交到不是自己的web服务地址,如果对端的编码格式和自己的编码格式不一样,应该怎么处理呢?这个时候,需要告诉浏览器,我们的数据应该按照对端要求的编码格式进行数据封装。换句话说,需要在客户端(浏览器)设置编码格式 javascript表单提交模式 var postform = document.getElementById('postform'); if (...
Android中 汉字使用Unicode编码格式表示
在刚开始接触Android 时发现某位高手使用android:text="邮箱" 这种方式为text属性设置文字方式,找了好久才发现是使用了Unicode编码格式表示,这样做的好处应该是在跨平台是不会出现汉字乱码, android:text="邮箱"  或 android:text="邮 箱" 两种格式的结果一样都是为tex
Http学习之使用HttpURLConnection发送post请求深入
转载自:http://blog.csdn.net/pandazxx/archive/2007/06/20/1660008.aspx   本节深入学习post请求。 上节说道,post请求的OutputStream实际上不是网络流,而是写入内存,在 getInputStream中才真正把写道流里面的内容作为正文与根据之前的配置生成的http request头合并成真正的http reque...
gcc编译参数指定编码格式
gcc 编译时程序编码控制 【GCC关于编译后字符串的保存方式的相关参数】 先了解一下GCC关于编译后字符串的保存方式的参数。 GCC编译时可以使用如下参数: -finput-charset 指定源文件的编码(若不指定,默认是UTF-8) -fexec-charset 指定多字节字符串(const char*)常量在编译后的程序里保存的编码集(若不指定,默认是UTF-8) -fwid
怎么利用HttpURLConnection向服务器发送键值对
一般情况下HttpURLConnection利用Get方法可以直接通过url向服务器发送键值对。这种方式下数据往往是以url?name=value&name1=value1.....的形式向服务器传送数据的。利用OutputStream直接向服务器写入字节流即可。但是对于一些比较隐秘的数据,用户并不想通过这种显示的方式向数据库传送数据。所有这时候即使是少量的数据也要用post方式来传送。对于pos
JAVA HttpURLConnection Post方式提交传递参数(二)
笔者使用:postman  软件来调试post请求,很好用 本文主要讲的是:Java实现HttpPost请求,需要传输参数,有可能需要传输JSON格式参数 所需要的jar包获取地址:点击此处(不一定是最新版本,但亲测有效) 下面的代码是实例需要导入的包: import java.util.ArrayList; import java.util.List; import java.util...