Android--gson将list转化为json字符串

简介: 版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/78605578 在项目中,需要将list转换为json字符串,发送给服务器,在实现过程中先建立一个实体类App,但是得到的只是list的最后一组数据,查找原因:要将new App放在for循环里面,每次新建一个对象就ok了。
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/78605578

在项目中,需要将list转换为json字符串,发送给服务器,在实现过程中先建立一个实体类App,但是得到的只是list的最后一组数据,查找原因:要将new App放在for循环里面,每次新建一个对象就ok了。

具体代码:

public class App {
    String label;
    String packageName;

    public String getPackageName() {
        return packageName;
    }

    public void setPackageName(String packageName) {
        this.packageName = packageName;
    }

    public String getLabel() {
        return label;
    }

    public void setLabel(String label) {
        this.label = label;
    }


}

public class JsonInfo {
    public static ArrayList<AppInfo> appInfoList;
    public static List<App> apps = new ArrayList<>();
    static App app;
    public static void info() {
        Gson gson = new Gson();
        ApplicationList list = new ApplicationList();
        appInfoList = list.AppList();
        for (AppInfo appInfo : appInfoList) {
            app = new App();
            String label = appInfo.getLabel();
//            Log.e("label",label);
            String packageName = appInfo.getPackageName();
//            Log.e("packageName",packageName);
            app.setLabel(label);
            app.setPackageName(packageName);
            apps.add(app);
        }
        String jsonApp = gson.toJson(apps);
        WriteSd(jsonApp);
    }
    private static void WriteSd(String str)
    {
        try{
            if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED));
            String foldername = Environment.getExternalStorageDirectory().getPath()+ "/360";
            File folder = new File(foldername);
            if (folder == null || !folder.exists()) {
                folder.mkdir();
            }
            FileOutputStream out = new FileOutputStream(folder.getCanonicalPath()+ "/"+"json.txt");
            out.write(str.getBytes());
            out.close();

        }catch(Exception e){
            e.printStackTrace();
        }

    }
}


目录
相关文章
|
4月前
|
Android开发
Android Stadio Build 窗口字符串乱码问题
在使用Android Studio过程中,如果遇到Build窗口字符串乱码问题,可以通过编辑`studio.vmoptions`文件添加`-Dfile.encoding=UTF-8`配置并重启Android Studio来解决。
181 1
Android Stadio Build 窗口字符串乱码问题
|
4月前
|
JSON JavaScript 前端开发
JavaScript实现字符串转json对象的方法
JavaScript实现字符串转json对象的方法
|
3月前
|
XML JSON 前端开发
json字符串CSS格式化
完成以上步骤后,你便能在网页中看到格式化后的JSON数据,它们将按照CSS定义的样式进行展示,使数据更易于阅读和理解。通过有效地结合JSON和CSS,你可以创建出更加丰富且易于交互的网页内容。
196 64
|
2月前
|
JSON 前端开发 JavaScript
json字符串如何转为list对象?
json字符串如何转为list对象?
266 7
|
3月前
|
XML JSON 前端开发
json字符串CSS格式化
json字符串CSS格式化
60 4
|
3月前
|
JSON 数据格式 Python
6-1|Python如何将json转化为字符串写到文件内 还保留json格式
6-1|Python如何将json转化为字符串写到文件内 还保留json格式
|
4月前
|
JSON Java 数据格式
Java系列之:生成JSON字符串
这篇文章介绍了两种在Java中生成JSON字符串的方法:使用`JSONObject`类及其`toJSONString`方法来动态生成,以及手动拼接字符串的方式来创建JSON格式的字符串。
Java系列之:生成JSON字符串
|
4月前
|
JSON Java Android开发
Android 开发者必备秘籍:轻松攻克 JSON 格式数据解析难题,让你的应用更出色!
【8月更文挑战第18天】在Android开发中,解析JSON数据至关重要。JSON以其简洁和易读成为首选的数据交换格式。开发者可通过多种途径解析JSON,如使用内置的`JSONObject`和`JSONArray`类直接操作数据,或借助Google提供的Gson库将JSON自动映射为Java对象。无论哪种方法,正确解析JSON都是实现高效应用的关键,能帮助开发者处理网络请求返回的数据,并将其展示给用户,从而提升应用的功能性和用户体验。
101 1
|
4月前
|
JSON Go 数据格式
Go实现json字符串与各类struct相互转换
文章通过Go语言示例代码详细演示了如何实现JSON字符串与各类struct之间的相互转换,包括结构体对象生成JSON字符串和JSON字符串映射到struct对象的过程。
32 0
|
4月前
|
BI
【Azure Power BI】Power BI获取SharePoint List列表后,如何展开List/Table中的字段,以及使用逗号拼接为一个字符串
【Azure Power BI】Power BI获取SharePoint List列表后,如何展开List/Table中的字段,以及使用逗号拼接为一个字符串