c#調(diào)用java接口是什么,讓我們一起了解一下?
Java接口是Java語(yǔ)言中存在的結(jié)構(gòu),有特定的語(yǔ)法和結(jié)構(gòu),c#調(diào)用java接口是實(shí)現(xiàn)調(diào)用Java中的接口來(lái)獲取信息。
在我們獲取信息的過(guò)程中,java接口常出現(xiàn)問(wèn)題的原因?
因?yàn)镴ava是一種單繼承的語(yǔ)言,一般情況下,哪個(gè)具體類(lèi)可能已經(jīng)有了一個(gè)超類(lèi),解決是給它的父類(lèi)加父類(lèi),或者給它父類(lèi)的父類(lèi)加父類(lèi),直到移動(dòng)到類(lèi)等級(jí)結(jié)構(gòu)的最頂端。這樣一來(lái),對(duì)一個(gè)具體類(lèi)的可插入性的設(shè)計(jì),就變成了對(duì)整個(gè)等級(jí)結(jié)構(gòu)中所有類(lèi)的修改。
原理其實(shí)很抽象,其實(shí)在C#的項(xiàng)目中需要實(shí)現(xiàn)調(diào)用Java中的接口來(lái)獲取信息也是比較的簡(jiǎn)單的,接下來(lái)讓我們用具體案例證明。
1、先來(lái)看實(shí)現(xiàn)的具體方法,將其放在工具類(lèi)中,便于調(diào)用。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、在調(diào)用的地方直接使用即可。
string?jsonStr?+=""; jsonStr=HttpUtility.UrlEncode(jsonStr);//字符串進(jìn)行編碼,參數(shù)中有中文時(shí)一定需要這一步轉(zhuǎn)換,否則接口接收的到參數(shù)會(huì)亂碼?rsp=UtilTool.doHttpPost(url,"str="+?jsonStr); tEZ3、整個(gè)調(diào)用過(guò)程就是這么簡(jiǎn)單,對(duì)于返回的參數(shù)解析問(wèn)題要根據(jù)返回值做相應(yīng)的處理即可。
以上就是小編今天的分享了,希望可以幫助到大家。