PDA

View Full Version : گرفتن یک عدد



abbasalim
یک شنبه 17 شهریور 1392, 01:06 صبح
بنام خدا
سلام
دوستان یه کد خیلی ساده بدین که یه عدد رو از اینترنت بخونم تو اینترنت یه فایل تکست باشه یا هرچی باشه مهم نیست فقط میخوام یه عدد ازش بخونم (ترجیحا مستقیما بتونه عدد بگیرو رشته نباشه)

darkenerboy
یک شنبه 17 شهریور 1392, 09:08 صبح
سلام
1-
ببین اقا شما یک سرورس بنویس که عدد شما رو برگردونه (echo کن)
توی چیزی هم که سرویست برمیگردونه فقط عدد باشه نه چیز دیگه
بعد خوندنش کار نداره
2-
شما میتونی عددت رو با json ارسال کنی که باز خوندن این هم کار نداره

موفق باشید

abbasalim
یک شنبه 17 شهریور 1392, 09:50 صبح
خوب من با خومندن json مشکل دارم :D بلد نیستم یه کد میشه بدی؟؟؟؟
کلا من تو ارسال از نت مشکل ندارم با php / json هرچی شما بگین :D ولی اینور بلد نیستم بخونم

darkenerboy
یک شنبه 17 شهریور 1392, 13:35 عصر
به این (http://barnamenevis.org/showthread.php?405151-%D8%A7%D8%B1%D8%B3%D8%A7%D9%84-%D9%88-%D8%AF%D8%B1%DB%8C%D8%A7%D9%81%D8%AA-%D8%AF%D8%A7%D8%AF%D9%87) یک نگاهی بنداز

موفق باشی

abbasalim
یک شنبه 17 شهریور 1392, 17:33 عصر
نشد نمیشه یه کد ساده بدی؟ هزارتاکد و آموزش زیرو رو کردم ولی نتونستم :(‌

darkenerboy
یک شنبه 17 شهریور 1392, 17:41 عصر
کدوم قسمت رو لازم دارید ؟
پی اچ پی یا جاوا ؟

abbasalim
یک شنبه 17 شهریور 1392, 17:43 عصر
تو قسمت جاوا

darkenerboy
یک شنبه 17 شهریور 1392, 22:40 عصر
ارسال و دریافت بر اساس استاندارد json میباشد:

البته این کد یک ارایه از داده های عددی رو میتونه ارسال کنه ولی ما یک عدد میزاریم توش
پی اچ پی :


<?php

$response = array();
$posts = array();

$posts[] = array('number' => 20);
$response['result'] = $posts;
echo json_encode($response);

?>

ولی این کد جاوا فقط یک عدد رو میگیره

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("Web Address");

HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();

BufferedReader br = new BufferedReader(new InputStreamReader(httpEntity.getContent()));
int res = 0;
if (br != null) {
StringBuilder sb = new StringBuilder();
int ch = 0;
while ((ch = br.read()) != -1)
sb.append((char) ch);
JSONObject json = new JSONObject(sb.toString());
JSONArray jsonArray = json.getJSONArray("result");
res jsonArray.getJSONObject(0).getInt("number");
}
br.close();
return res;

البته اگه توی خط آخر جای getJSONObject از حلقه استفاده کنیم این کد میتونه یک آرایه عدد رو بگیر
به کلامات کلیدی result و number دقت داشته باشید

موفق باشید

abbasalim
یک شنبه 17 شهریور 1392, 23:03 عصر
فوق العاده ممنون :قلب:

abbasalim
پنج شنبه 21 شهریور 1392, 11:28 صبح
هر کار میکنم داخل اندروید 4 به بالا کار نمیکنه :گریه: ولی داخل اندروید 2.3 اینا سالمه

sajadpm
پنج شنبه 21 شهریور 1392, 12:45 عصر
شما باید از asynctask استفاده کنید ! البته یک راه دیگه هم داره که توصیه نمیشه !

abbasalim
پنج شنبه 21 شهریور 1392, 17:53 عصر
تشکر با AsyncTask مشکل حل شد