GVKun编程网logo

如何在Java中将jsonString转换为JSONObject(java json转为string)

2

本文将分享如何在Java中将jsonString转换为JSONObject的详细内容,并且还将对javajson转为string进行详尽解释,此外,我们还将为大家带来关于alibaba.fastjso

本文将分享如何在Java中将jsonString转换为JSONObject的详细内容,并且还将对java json转为string进行详尽解释,此外,我们还将为大家带来关于alibaba.fastjson.JSONObject:Map跟Json String转换、android – org.json.JSONException:值<!DOCTYPE类型java.lang.String无法转换为JSONObject、E / VOLLEY:org.json.JSONException:值 的相关知识,希望对你有所帮助。

本文目录一览:

如何在Java中将jsonString转换为JSONObject(java json转为string)

如何在Java中将jsonString转换为JSONObject(java json转为string)

我有String变量称为jsonString

{"phonetype":"N95","cat":"WP"}

现在,我想将其转换为JSON对象。我在Google上搜索了更多内容,但没有得到任何预期的答案..

答案1

小编典典

使用org.json库:

try {     JSONObject jsonObject = new JSONObject("{\"phonetype\":\"N95\",\"cat\":\"WP\"}");}catch (JSONException err){     Log.d("Error", err.toString());}

alibaba.fastjson.JSONObject:Map跟Json String转换

alibaba.fastjson.JSONObject:Map跟Json String转换

String test = "jdkalkjda|||djkdla|||djlak";
		String str[] = test.split("\\|\\|\\|");
		System.out.println(str.length);
		
		
		HashMap<String,Object> t= new HashMap<String,Object>();
		HashMap<String,Object> t1 = new HashMap<String,Object>();
		t1.put("k","3");
		Object s1 = JSONObject.toJSON(t1);
		t.put("key",s1);
		String s = JSONObject.toJSONString(t);
		System.out.println(s);
		
		String s2 = JSONObject.parSEObject(s).getJSONObject("key").toString();
		System.out.println(JSONObject.parSEObject(s2).getDouble("k"));
		System.out.println(JSONObject.parSEObject(s).getJSONObject("key").getDouble("k"));

android – org.json.JSONException:值<!DOCTYPE类型java.lang.String无法转换为JSONObject

android – org.json.JSONException:值<!DOCTYPE类型java.lang.String无法转换为JSONObject

在这里,我想使用API​​密钥显示 JSON内容.但我无法获得身份验证.

我在JsonObject中收到错误:

org.json.JSONException: Value Authorization of type java.lang.String cannot be converted to JSONObject

在我的Android应用程序中,我只是传递API密钥和URL id以获取以下URL中的JSON响应.我使用JSON数组显示JSON内容.

但如果我:

public class AndroidAPiActivity extends Activity {

/*
 * FlickrQuery = FlickrQuery_url
 * + FlickrQuery_per_page
 * + FlickrQuery_nojsoncallback
 * + FlickrQuery_format
 * + FlickrQuery_tag + q
 * + FlickrQuery_key + FlickrApiKey
 */

String FlickrQuery_url = "http://192.138.11.9/api/interests/";
String FlickrQuery_per_page = "&per_page=1";
String FlickrQuery_nojsoncallback = "&nojsoncallback=1";
String FlickrQuery_format = "&format=json";
String FlickrQuery_tag = "&tags=";
String FlickrQuery_key = "&api_key=";

// Apply your Flickr API:
// www.flickr.com/services/apps/create/apply/?
   String FlickrApiKey = "f65215602df8f8af";

   EditText searchText;
   Button searchButton;
   TextView textQueryResult,textJsonResult;
   ImageView imageFlickrPhoto;
   Bitmap bmFlickr;

   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.main);

       searchText = (EditText)findViewById(R.id.searchtext);
       searchButton = (Button)findViewById(R.id.searchbutton);
       textQueryResult = (TextView)findViewById(R.id.queryresult);
       textJsonResult = (TextView)findViewById(R.id.jsonresult);
       imageFlickrPhoto = (ImageView)findViewById(R.id.flickrPhoto);
       searchButton.setonClickListener(searchButtonOnClickListener);
   }

   private Button.OnClickListener searchButtonOnClickListener
   = new Button.OnClickListener(){

 public void onClick(View arg0) {
  // Todo Auto-generated method stub
  String searchQ = searchText.getText().toString();
  String searchResult = QueryFlickr(searchQ);
  textQueryResult.setText(searchResult);
  String jsonResult = ParseJSON(searchResult);
  textJsonResult.setText(jsonResult);

  if (bmFlickr != null){
   imageFlickrPhoto.setimageBitmap(bmFlickr);
  }
 }};

   private String QueryFlickr(String q){

    String qResult = null;

    String qString =
      FlickrQuery_url
      + FlickrQuery_per_page
      + FlickrQuery_nojsoncallback
      + FlickrQuery_format
      + FlickrQuery_tag + q 
      + FlickrQuery_key + FlickrApiKey;

    HttpClient httpClient = new DefaultHttpClient();
       HttpGet httpGet = new HttpGet(qString);

       try {
  httpentity httpentity = httpClient.execute(httpGet).getEntity();

  if (httpentity != null){
   InputStream inputStream = httpentity.getContent();
   Reader in = new InputStreamReader(inputStream);
   BufferedReader bufferedreader = new BufferedReader(in);
   StringBuilder stringBuilder = new StringBuilder();

   String stringReadLine = null;

   while ((stringReadLine = bufferedreader.readLine()) != null) {
    stringBuilder.append(stringReadLine + "\n");
    }

   qResult = stringBuilder.toString();

  }

 } catch (ClientProtocolException e) {
  // Todo Auto-generated catch block
  e.printstacktrace();
 } catch (IOException e) {  
  // Todo Auto-generated catch block
  e.printstacktrace();
 }

       return qResult;
   }

   private String ParseJSON(String json){

    String jResult = null;
    bmFlickr = null;
    String key_id;
    String category;
    String subcategory;
    String title;
    String icon_image;

    try
     {
  JSONObject JsonObject = new JSONObject(json);
  JSONObject Json_photos = JsonObject.getJSONObject("interests");
  JSONArray JsonArray_photo = Json_photos.getJSONArray("interest");

  //We have only one photo in this exercise
  JSONObject FlickrPhoto = JsonArray_photo.getJSONObject(0);

  key_id = FlickrPhoto.getString("row_key");
  category = FlickrPhoto.getString("category");
  subcategory = FlickrPhoto.getString("subcategory");
   title = FlickrPhoto.getString("title");

  jResult = "\n key_id: " + key_id + "\n"
    + "category: " + category + "\n"
    + "subcategory: " + subcategory + "\n"
    + "title: " + title + "\n";

  bmFlickr = LoadPhotoFromFlickr(key_id,category,subcategory,title);

 } catch (JSONException e) {
  // Todo Auto-generated catch block
  e.printstacktrace();
 }

    return jResult;
   }

   private Bitmap LoadPhotoFromFlickr(
     String key_id,String category,String subcategory,String title){
    Bitmap bm= null;

    String icon_image = null;
 //   String FlickrPhotoPath ="";
   String FlickrPhotoPath ="http://182.72.180.34/media/"+icon_image+".jpg";

    URL FlickrPhotoUrl = null;

    try {

  FlickrPhotoUrl = new URL(FlickrPhotoPath);

  HttpURLConnection httpconnection = (HttpURLConnection) FlickrPhotoUrl.openConnection();
  httpconnection.setDoInput(true);
  httpconnection.connect();
  InputStream inputStream = httpconnection.getInputStream();
  bm = BitmapFactory.decodeStream(inputStream);

 } catch (MalformedURLException e) {
  // Todo Auto-generated catch block
  e.printstacktrace();
 } catch (IOException e) {
  // Todo Auto-generated catch block
  e.printstacktrace();
 }

    return bm;
   }
}

解决方法

更新:

基于HTML响应,我可以告诉你这不是JSON.该响应告诉我您的Web服务的URL不正确.

您需要检查您的网址.

额外信息/上一个答案:

看起来简单的答案是正确的 – 您的结果不是有效的JSON字符串.有关JSON应该是什么样的详细信息,请参见JSON.org网站.

查看JSON Parser Online – 我发现它在使用JSON时非常有用.

很奇怪你正在请求JSON,它没有正确地返回它 – 也许我错过了一些东西.

E / VOLLEY:org.json.JSONException:值<html> <body> <java.lang.String类型的脚本无法转换为JSONObject

E / VOLLEY:org.json.JSONException:值

如何解决E / VOLLEY:org.json.JSONException:值<html> <body> <java.lang.String类型的脚本无法转换为JSONObject?

我针对相同的问题尝试了很多解决方案,并将字符串转换为json对象,但未解决。我不清楚json url或代码的确切位置在哪里。

json数据:

[{"id":1,"image_id":1,"shop_name":"sunset garage","phone_number":"9989987878","address":"bapunagar","pincode":"382345","city":"ahmedabad","state":"gujarat","shoptime_id":1,"services_id":2,"lattitude":11.230000000000000426325641456060111522674560546875,"longitude":32.4500000000000028421709430404007434844970703125,"created_at":null,"updated_at":null},{"id":2,"image_id":2,"shop_name":"laxmi mechanics","phone_number":"9979965676","address":"thakkarnagar","pincode":"345645","shoptime_id":2,"lattitude":56.4500000000000028421709430404007434844970703125,"longitude":12.3499999999999996447286321199499070644378662109375,"updated_at":null}]

代码如下:

private void addItemsFromJSON() {
    System.out.println(":::::::IN JSON FUNCTION::::::::::::::");
  //  JsonParser parser=new JsonParser();
   // parser.parse(json_url);
    //requestQueue=Volley.newRequestQueue(this);

    JsonObjectRequest request=new JsonObjectRequest(Request.Method.GET,json_url,null,new Response.Listener<JSONObject>() {

                @Override
                public void onResponse(JSONObject response) {
                   // String array= String.valueOf(convert(response));


                    try {
                        JSONArray jsonArray=new JSONArray(response);
                        for (int i=0;i<jsonArray.length();i++){

                            JSONObject itemObj=jsonArray.getJSONObject(i);

                            String img1 = itemObj.getString("image_id");
                            String img2 = itemObj.getString("img2");
                            String name = itemObj.getString("shop_name");
                            System.out.println("Shop Name::"+name);
                            String rating = itemObj.getString("rating");
                            String time = itemObj.getString("shoptime_id");
                            String services = itemObj.getString("services_id");
                            String address=itemObj.getString("address");
                            String zip_code=itemObj.getString("pincode");
                            String phone=itemObj.getString("phone_number");
                            latitude=itemObj.getString("latitude");
                            longitude=itemObj.getString("longitude");
                            shop shop = new shop(img1,img2,name,rating,time,services,address,zip_code,phone,latitude,longitude);
                            viewItems.add(shop);
                        }
                    } catch (JSONException e) {
                        System.out.println(":::JSON ARRAY ERROR::::");
                        e.printstacktrace();
                    }
                }
            },new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            System.out.println(":::::::::::::::::::ERROR::::::::::::::::::::::::::::");
           // Log.e("VOLLEY",error.getMessage());
        }
    });
    requestQueue = Volley.newRequestQueue(this);
    requestQueue.add(request);
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

FastJson之JsonObject, JsonString, JavaBean,List快速转换

FastJson之JsonObject, JsonString, JavaBean,List快速转换

 


// 将json字符串转换为json对象
JSONObject jsonObject = JSON.parseObject(jsonStr); // {"retState":"SUCCESS","retCode":"000000","retMsg":"成功", "data":[{"id":2150,"name":"合肥市","address":null}],"total":0} // json字符串转java对象 String data = jsonObject.getString("data"); ComboxResponse city = JSON.parseObject(data, List<ComboxResponse>.class); // json字符串转List集合 ComboxResponse city = JSON.parseArray(data, ComboxResponse.class).get(0);



 

     

今天关于如何在Java中将jsonString转换为JSONObjectjava json转为string的讲解已经结束,谢谢您的阅读,如果想了解更多关于alibaba.fastjson.JSONObject:Map跟Json String转换、android – org.json.JSONException:值<!DOCTYPE类型java.lang.String无法转换为JSONObject、E / VOLLEY:org.json.JSONException:值 的相关知识,请在本站搜索。

本文标签: