sam*_*ira 3 android json android-layout android-listview
我想从我的sqlite获取json文件并将其保存在asset.myJson.json中.以下是我的代码,我想在myJson.json中看到结果.请帮我如何将数据导入myJson.json.
private JSONArray jsongetResult(){
SQLiteDatabase database = openOrCreateDatabase("ORCL", MODE_PRIVATE, null);
Cursor cursor = database.rawQuery("SELECT id,title,qty,price FROM CART;", null);
JSONArray resultSet = new JSONArray();
cursor.moveToFirst();
while (cursor.isAfterLast() == false) {
int totalColumn = cursor.getColumnCount();
JSONObject rowObject = new JSONObject();
for( int i=0 ; i< totalColumn ; i++ )
{
if( cursor.getColumnName(i) != null )
{
try
{
if( cursor.getString(i) != null )
{
Log.d("TAG_NAME", cursor.getString(i) );
rowObject.put(cursor.getColumnName(i) , cursor.getString(i) );
}
else
{
rowObject.put( cursor.getColumnName(i) , "" );
}
}
catch( Exception e )
{
Log.d("TAG_NAME", e.getMessage() );
}
}
}
resultSet.put(rowObject);
}
cursor.close();
Log.d("TAG_NAME", resultSet.toString() );
return resultSet;
}
Run Code Online (Sandbox Code Playgroud)
把这些行放在你的jsongetResult()函数中
File f = new File("your path");
FileOutputStream fos = new FileOutputStream(f,true);
PrintStream ps = new PrintStream(fos);
pa.append(resultSet.toString());
这就是我在json中转换数据的方式
public String getAllDataAndGenerateJSON() throws JSONException, FileNotFoundException {
String query = "select " + NAME + "," + ADDRESS + "," + CITY + ","
+ CONTACTNO + "," + AVAILABLE + "," + CATEGORY
+ " from contact_list";
Cursor c = database.rawQuery(query, null);
c.moveToFirst();
JSONObject Root = new JSONObject();
JSONArray ContactArray = new JSONArray();
File f = new File(Environment.getExternalStorageDirectory()
+ "/ContactDetail.txt");
FileOutputStream fos = new FileOutputStream(f,true);
PrintStream ps = new PrintStream(fos);
int i = 0;
while (!c.isAfterLast()) {
JSONObject contact = new JSONObject();
try {
contact.put("Name", c.getString(c.getColumnIndex(NAME)));
contact.put("Address", c.getString(c.getColumnIndex(ADDRESS)));
contact.put("City", c.getString(c.getColumnIndex(CITY)));
contact.put("ContactNumber", c.getString(c.getColumnIndex(CONTACTNO)));
contact.put("Available", c.getString(c.getColumnIndex(AVAILABLE)));
contact.put("Category", c.getString(c.getColumnIndex(CATEGORY)));
c.moveToNext();
ContactArray.put(i, contact);
i++;
} catch (JSONException e) {
e.printStackTrace();
}
}
Root.put("CONTACTDETAILS", ContactArray);
ps.append(Root.toString());
return Root.toString();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5079 次 |
| 最近记录: |