C #與java進行通訊?傳輸字符串爲例。

C#端代碼:

String contents =“hello 這是C#傳來的數據”;//請求string uri = "http://192.168.1.149:8080/項目名/TestServlte";HttpWebRequest request = HttpWebRequest.Create(uri) as HttpWebRequest;request.Method = "post";//請求方法request.ProtocolVersion = new Version(1, 1);

string param = contents;Stream reqStream = request.GetRequestStream()reqStream.Write(param);reqStream.Close();

HttpWebResponse response = request.GetResponse() as HttpWebResponse;Stream stream = response.GetResponseStream()StreamReader reader = new StreamReader(stream);string responseString = reader.ReadToEnd();

reader.Close();

java端代碼:

/*** doPost(運用servlet連接elasticsearch')*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//使用post方法request.setCharacterEncoding("UTF-8");//設置字符編碼response.setContentType("text/html;charset=utf-8");//獲取流的同時設置編碼格式爲utf-8(雖然上面已經設置了,但是這邊還是要再設一次) BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream(),"utf-8"));String lines = reader.readLine();//獲取C#端傳輸過來的數據爲 System.out.println("C#端傳輸過來的數據爲:"+lines);//lines = new String(lines.getBytes(), "utf-8");reader.close();//關閉連接 //直接轉換爲系統默認編碼下對應的字符,再輸出 PrintWriter out = response.getWriter();out.println("這是返回給C#端的信息:Hello C#!");out.flush();out.close(); ESTools.close();System.out.println("執行完畢");}

 

親自使用過了,可以成功!!!

若讀者有不成功的,文章下面留言,聯繫小編。

  • Console.WriteLine(responseString);  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章