c#調用java接口是什么,讓我們一起了解一下?
Java接口是Java語言中存在的結構,有特定的語法和結構,c#調用java接口是實現調用Java中的接口來獲取信息。
在我們獲取信息的過程中,java接口常出現問題的原因?
因為Java是一種單繼承的語言,一般情況下,哪個具體類可能已經有了一個超類,解決是給它的父類加父類,或者給它父類的父類加父類,直到移動到類等級結構的最頂端。這樣一來,對一個具體類的可插入性的設計,就變成了對整個等級結構中所有類的修改。
原理其實很抽象,其實在C#的項目中需要實現調用Java中的接口來獲取信息也是比較的簡單的,接下來讓我們用具體案例證明。
1、先來看實現的具體方法,將其放在工具類中,便于調用。1?using?System.Net;? 2?using?System.IO;? 3 using?System.Text;?public?class?UtilTool A5 6?static?CookieContainer?cookie=new?CookieContainer();? 7?public?static?string?dohttpPost(string?Url,?string?postDataStr)? 8 { 9?HttpwebRequest?request?=(HttpWebRequest)WebRequest.Create(Url);? 10?request.Method?="POST";? 11?//request.ContentType="application/json";? 12?//request.Accept="application/json";? 13?request.ContentType?="application/x-www-form-urlencoded";? 14 15?//request.ContentLength=Encoding.UTF8.GetByteCount(postDataStr);? 16?request.CookieContainer?mcookie;? 1> Stream?myRequeststream=request.GetRequeststream(); 18 StreamWriter?myStreamWriter?=?new?Streamwriter(myRequestStream,Encoding.GetEncoding("gb2312")); 19?myStreamWriter.Write(postDataStr);? 20?myStreamWriter.Close();? 21 22?HttpWebResponse?response?=(HttpWebResponse)reguest.GetResponse();? 23 24?response.Cookies?=cookie.GetCookies(response.ResponseUni);? 25?Stream?myResponseStream?=response.GetResponseStream();? 26?StreamReader?myStreamReader?=?new?StreamReader(myResponseStream,?Encoding.GetEncoding("utf-8"));? 27?string?retstring=mystreamReader.ReadToEnd();? 28?myStreamReader.Close();? 29?myResponseStream.close();? 30?return?retString;? 31 } 322、在調用的地方直接使用即可。
string?jsonStr?+=""; jsonStr=HttpUtility.UrlEncode(jsonStr);//字符串進行編碼,參數中有中文時一定需要這一步轉換,否則接口接收的到參數會亂碼?rsp=UtilTool.doHttpPost(url,"str="+?jsonStr); tEZ3、整個調用過程就是這么簡單,對于返回的參數解析問題要根據返回值做相應的處理即可。
以上就是小編今天的分享了,希望可以幫助到大家。