写Json

package com.example.day_17bean2json;


import java.util.ArrayList;


import com.google.gson.Gson;


import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;


public class MainActivity extends Activity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);


Gson gson=new Gson();
//最外层的对象
Bean bean=new Bean();

//封装要转成json的对象
User user=new User();
user.age="18";
user.name="宽叔";
user.sex="??";

bean.id="99";
bean.list=new ArrayList<User>();
for(int i=0;i<3;i++){
bean.list.add(user);
}

//把分装好的对象装成json
String json = gson.toJson(bean);
// {'name':'宽叔'}
System.out.println(json);


// gson.fromJson(json, classOfT)
}





}

====================================================================

/**
 * 
 */
package com.example.day_17bean2json;


import java.util.List;


/**
 * @author WJL
 * 
 */
public class Bean {
public String id;


public List<User> list;

}

====================================================================

/**
 * 
 */
package com.example.day_17bean2json;


/**
 * @author WJL
 * 
 */
public class User {
public String name;
public String age;
public String sex;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在C++中,读JSON(JavaScript Object Notation)通常会使用第三方库,因为C++标准库本身并不直接支持JSON处理。这里推荐两个常用的库: 1. **RapidJSON**:这是一个快速、易用的C++ JSON解析器和生成器,它提供了API用于解析JSON字符串到C++对象(如map或vector),以及将C++对象转换为JSON字符串。 - 示例(读取): ```cpp #include "rapidjson/document.h" rapidjson::Document d; std::ifstream ifs("data.json"); if (ifs && d.Parse<0>(ifs).ok()) { // d是一个JsonDocument对象,你可以像操作C++ map一样访问数据 const auto& value = d["key"]; // 处理value... } ``` - 示例(入): ```cpp rapidjson::Document d; d.SetObject(); d.AddMember("name", "John Doe", d.GetAllocator()); rapidjson::StringBuffer buffer; rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buffer); d.Accept(writer); std::ofstream ofs("output.json"); if (ofs) { ofs << buffer.GetString(); } ``` 2. **nlohmann/json**:这是一个简洁的JSON库,提供线程安全的API,并且易于理解和使用。 - 示例(读取): ```cpp #include <nlohmann/json.hpp> nlohmann::json j; std::ifstream file("data.json"); file >> j; // 解析JSON const auto& value = j["key"]; ``` - 示例(入): ```cpp nlohmann::json j = {{"name", "John Doe"}}; std::ofstream file("output.json"); file << j.dump(4); // 4代表缩进的空格数 ``` 使用这些库之前,请确保已将它们添加到项目依赖中并按照库文档安装和配置。关于具体使用方法或遇到的问题,如有更多疑问,请提问:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值