C'est la même chose qu'Android, en lisant les données JSON
Fichier PHP:
<? phpclass test {// path de journal const log_path = "e: /phpserver/apache/logs//error.log"; // Nombre de lignes affichées pages const = 50; Fonction statique publique Main () {header ("Content-Type: Text / Html; charSet = UTF-8"); if (! vide ($ _ get ['action'])) {if (! Method_exists ('test', $ _ get ['action'])) {echo "404"; } else {self :: $ _ get ['action'] (); } sortie; }} fonction statique publique showapachelogs () {$ test = new test (); $ result = $ test-> readlogs (self :: log_path, self :: pages); $ json = array (); pour ($ i = 0; $ i <count ($ result); $ i ++) {$ line = $ result [$ i]; // Remarque ici, si le traitement est traité, l'analyse JSON échouera $ line = str_replace ("/ r / n", "", $ line); $ result [$ i] = array ("num" => $ i + 1, "msg" => urlencode ($ line)); } $ str = stridslashes (UrLDECODE (JSON_ENCODE ($ Result))); Echo $ str; } / ** * LIRE LOG * / Fonction privée ReadLogs ($ filepath, $ num = 20) {$ fp = fopen ($ filepath, "r"); $ pos = -2; $ eof = ""; $ head = false; // Lorsque le nombre total de lignes est inférieur à NUM, déterminez s'il atteint la première ligne $ lignées = array (); while ($ num> 0) {while ($ eof! = "/ n") {if (fseek ($ fp, $ pos, Seek_end) == 0) {// fseek renvoie avec succès 0 et ne revient pas -1 $ eof = fGetc ($ fp); $ pos--; } else {// Lorsqu'il atteint la première ligne et la première ligne, la définition de $ POS échoue fseek ($ fp, 0, Seek_set); $ head = true; // Lorsqu'il atteint la tête du fichier, le commutateur ouvre la pause; }} array_unshift ($ Lines, fgets ($ fp)); if ($ head) {break; } // Cette phrase ne peut être mise qu'après une phrase, car après avoir atteint l'en-tête du fichier, lisez la première ligne puis sautez de la boucle entière $ eof = ""; $ num--; } fclose ($ fp); return array_reverse ($ lignes); }} Test :: main ();Fichiers Java:
Importer java.io.inputStream; import java.net.httpurlconnection; import java.net.url; import org.json.jsonArray; import org.json.jsonObject; classe publique readlogs {public static void main (string [] args) lance l'exception {url url = new Url ("http: //localhost/test.php? Action = showapachelogs"); HttpurlConnection conn = (httpurlconnection) url.openconnection (); Conn.SetConnectTimeout (10000); Conn.SetRequestMethod ("Get"); Conn.SetDoInput (true); Conn.SetDoOutput (true); // sortie renvoie le résultat inputStream input = Conn.getInputStream (); int resLen = 0; octet [] res = nouveau octet [1024]; StringBuilder sb = new StringBuilder (); while ((resLen = input.read (res))! = - 1) {sb.append (new String (res, 0, reslen)); } String jSontr = sb.toString (); // String est converti en JSON JSONArray JSONArray = new JSONArray (JSONTR); for (int i = 0; i <jsonArray.length (); i ++) {jsonObject jSonObject = new JSONObject (jsonArray.getString (i)); String msg = (String) jsonObject.get ("msg"); int num = (int) jsonObject.get ("num"); System.out.println (num + ":" + msg); }}}La méthode ci-dessus pour implémenter les données d'interface PHP de lecture Java est tout le contenu que j'ai partagé avec vous. J'espère que vous pourrez vous faire référence et j'espère que vous pourrez soutenir Wulin.com plus.