`
runfeel
  • 浏览: 935793 次
文章分类
社区版块
存档分类
最新评论

android中Json数据保存方式

 
阅读更多
package com.example.savejsonproject;


import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.util.Date;


import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;


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


public class MainActivity extends Activity {
private String company="宜昌静哥科技软件学院";
private String address="湖北省宜昌市宜都市枝城镇";
private String telephone="18671736137";
private String[] namedata={"李元静","冯新尧","何帆"};
private int[] agedata={21,22,21};
private boolean[] marrieddata={true,false,true};
private double[] salarydata={8000.0,8000.0,8000.0};
private Date[] birthdaydata={new Date(),new Date(),new Date()};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.activity_main);
JSONObject allData=new JSONObject(); //建立最外面的JSONObject
JSONArray array=new JSONArray(); //定义新的JSONArray对象
for (int i = 0; i < namedata.length; i++) { //For循环添加数据
JSONObject temp=new JSONObject(); //创建一个新的JSONObject对象
try {
temp.put("name", namedata[i]); //设置要保存的数据,直接子项的子项
temp.put("age", agedata[i]);
temp.put("merried", marrieddata[i]);
temp.put("salary", salarydata[i]);
temp.put("birthday", birthdaydata[i]);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
array.put(temp);
}
try {
allData.put("persondata", array); //保存所有数据
allData.put("company", this.company); //最外层数据
allData.put("address", this.address);
allData.put("telephone", this.telephone);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){//判断是否存在SD卡
return ;
}
File file=new File(Environment.getExternalStorageDirectory().toString()
+File.separator+"mldndata"
+File.separator+"json.txt");
if(!file.getParentFile().exists()){//判断父文件是否存在,如果不存在则创建
file.getParentFile().mkdirs();
}
PrintStream out=null; //打印流
try {
out=new PrintStream(new FileOutputStream(file)); //实例化打印流对象
out.print(allData.toString()); //输出数据
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(out!=null){ //如果打印流不为空,则关闭打印流
out.close();
}
}
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}


}
分享到:
评论

相关推荐

    android之JSON数据的构建

    本教程将深入讲解如何在Android环境中构建JSON数据。 首先,理解JSON的基本结构至关重要。JSON主要包含两种基本类型:对象(Object)和数组(Array)。对象由键值对组成,用花括号{}包围,键(key)是字符串,值...

    老罗android 解析json数据源码

    在Android中,我们通常使用Gson库、org.json库或Jackson库来解析和生成JSON数据。 老罗在讲解中可能会涉及以下几个关键知识点: 1. **Gson库**:Google提供的一个强大的Java库,可以将Java对象转换为JSON字符串,...

    android之json和gson数据解析最完整的代码例子(包括各种样式的json数据)

    本文将详细介绍如何在Android应用中使用JSON和Gson进行数据解析,并通过实际代码示例来演示各种类型的JSON数据处理。 一、JSON基础 1. JSON格式:JSON是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式...

    android城市json数据 按拼音排列/按省市区排列 附带使用方法

    在Android应用中,JSON数据常用于服务器与客户端之间的数据传输。在这个案例中,我们有两个JSON文件:`按拼音排列.json`和`按省市区排列.json`,它们分别存储了中国所有城市的拼音排序和按照省市区结构的数据。 1. ...

    【Android】JSON数据的读写方法

    JSON数据的读写是Android应用开发中的常见任务,尤其是在进行网络通信、数据存储或者数据序列化时。本篇文章将深入探讨Android环境下JSON数据的读写方法。 一、JSON数据格式 JSON数据格式基于JavaScript语法,但...

    android 动态解析获取json数据的键值对

    在Android开发中,有时我们需要从服务器获取JSON数据并解析它以展示在应用中。这个"android 动态解析获取json数据的键值对"的项目就是针对这种情况的一个实例,主要展示了如何在Eclipse环境下,不预先创建JSON键值...

    android demo,json数据格式的案例的应用

    本示例是关于如何在Android应用中解析和使用JSON数据的一个实战演示。让我们深入探讨一下这个"android demo,json数据格式的案例的应用"。 首先,JSON是一种轻量级、易于人读写且易于机器解析的格式,它基于...

    Android读取本地json文件的方法(解决显示乱码问题)

    - **Android操作JSON格式数据**:Android提供了Gson库、org.json库等工具来解析和生成JSON数据。 - **Android数据库操作**:SQLite是Android内置的轻量级数据库,可以用于持久化数据。 - **Android Activity操作**:...

    android使用JSON进行网络数据交换(服务端、客户端)的实现

    在实际项目中,通常会使用ORM框架(如Hibernate、MyBatis)将JSON数据映射到数据库模型,或者使用Web框架提供的工具(如Spring的`@ModelAttribute`)自动将JSON转化为Java对象。 为了确保网络通信的安全性,还需要...

    android_json所需jar包

    首先,"android_json所需jar包"通常指的是用于在Android应用中处理JSON数据的库文件,比如org.json库。这个库提供了解析JSON字符串和构建JSON对象的方法,是Android开发中处理JSON不可或缺的一部分。在早期的Android...

    android中json的用法

    该文档完整的讲述了android中json的用法,包括json数据的存储和读取,还有解析json数据等。

    android demo,json数据的处理,json字符串的发送和解析。

    4. 解析JSON响应:使用Gson或org.json库解析JSON数据,将数据绑定到UI组件,或者保存到数据库中。 5. 示例代码中的“2015年9月21日 114301json字符串解析好了”可能是一个具体的例子或测试用例,表明该示例项目中...

    android解析json数据)第一集JsonProject.zip

    在“android解析json数据)第一集JsonProject.zip”这个压缩包中,我们很可能会找到一个实战项目,展示了如何在Android应用中处理JSON数据。通过这个项目,我们可以学习到以下关键知识点: 1. JSON基本结构:JSON...

    Android中通过json向MySql中读写数据的方法

    Android 中通过 JSON 向 MySQL 中读写数据的方法是指在 Android 应用程序中使用 JSON(JavaScript Object Notation)格式将数据上传到 MySQL 数据库中,并从 MySQL 数据库中读取数据。这种方法可以实现 Android 应用...

    Android JSON网络数据交换_基本应用样例

    总结来说,Android应用通过JSON与服务器进行数据交换时,涉及的主要步骤包括创建JavaBean定义数据结构、在服务器端生成JSON、在Android客户端发起网络请求、解析接收到的JSON数据以及更新UI显示。理解这一流程对于...

    Android 安卓 json解析

    对于本地JSON文件解析,首先我们需要读取JSON数据。在Android中,这通常通过`AssetManager`类完成,因为JSON文件常存放在`assets`目录下。 ```java try { AssetManager assetManager = getAssets(); InputStream ...

    Android读取JSON实例

    本文将深入探讨如何在Android应用中读取并解析JSON数据,并将其显示在TextView上。我们将使用Android的内置库来实现这一功能。 首先,理解JSON的基本结构至关重要。JSON是一种轻量级的文本格式,主要由键值对(key-...

    android使用JSON进行网络数据交换

    在Android SDK中,包含了处理JSON的类库,如`org.json`包,使得开发者能够方便地解析和生成JSON数据。 JSON支持的数据类型包括: 1. 字符串(String):使用双引号包围,如`"abc"`。特殊字符需要转义,例如`\`、`"`、...

    Android Studio下使用Google Gson解析Json数据示例

    在Android Studio中,Gson库可以帮助我们方便地解析和生成JSON数据。本篇文章将详细介绍如何在Android Studio环境下使用Google Gson解析Json数据。 首先,我们需要在项目中引入Gson库。打开build.gradle模块文件,...

    Android中JSON详细总结(全)

    在Android中,处理JSON数据通常涉及以下几个关键类: 1. **JSONObject**:这是JSON解析的基础,代表一个JSON对象。它可以存储Key/Value对,并提供`put()`方法来添加键值对。`toString()`方法将JSONObject转化为字符...

Global site tag (gtag.js) - Google Analytics