日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android json 解析图片路径,Android 使用Gson解析Asset 目录下的.json文件

發(fā)布時間:2023/12/19 Android 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android json 解析图片路径,Android 使用Gson解析Asset 目录下的.json文件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

配合Rxjava,直接代碼

Observable.create((ObservableOnSubscribe) e -> {

StringBuilder stringBuilder = new StringBuilder();

InputStream inputStream = getResources().getAssets().open("techscan.json");

InputStreamReader isr = new InputStreamReader(inputStream);

BufferedReader reader = new BufferedReader(isr);

String jsonLine;

while ((jsonLine = reader.readLine()) != null) {

stringBuilder.append(jsonLine);

}

reader.close();

isr.close();

inputStream.close();

e.onNext(stringBuilder.toString());

e.onComplete();

}).map(s -> {

List list = new ArrayList<>(4096);

GridConfig gridConfig;

JsonArray elements = new JsonParser().parse(s).getAsJsonArray();

for (int i = 0, size = elements.size(); i < size; i++) {

gridConfig = C.GSON.fromJson(elements.get(i).getAsJsonObject(), GridConfig.class);

list.add(gridConfig);

}

Log.d("TAG", "list.size: " + list.size());

return list;

}).map(list -> {

BriteDatabase.Transaction transaction = SqlBriteDatabase.getDb().newTransaction();

for (GridConfig gridConfig : list) {

SqlBriteDatabase.insert(GridConfigDao.TABLE_NAME, new GridConfigDao.Builder(gridConfig).build());

}

transaction.markSuccessful();

transaction.end();

return true;

})

.subscribeOn(Schedulers.io())

.observeOn(AndroidSchedulers.mainThread())

.subscribe(new Observer() {

QMUITipDialog tipDialog;

@Override

public void onSubscribe(Disposable d) {

tipDialog = DialogUtils.digLoading(activity, "正在載入配置項");

tipDialog.show();

}

@Override

public void onNext(Boolean aBoolean) {

if (aBoolean) {

ToastUtils.showShortToast("載入完成");

} else {

ToastUtils.showShortToast("載入失敗");

}

}

@Override

public void onError(Throwable e) {

e.printStackTrace();

DialogUtils.dimiss(tipDialog);

}

@Override

public void onComplete() {

DialogUtils.dimiss(tipDialog);

}

});

其實根本問題就是把.json文件中的字符讀出來,然后想干什么就可以干什么

讀.json文件字符代碼

StringBuilder stringBuilder = new StringBuilder();

InputStream inputStream = getResources().getAssets().open("techscan.json");

InputStreamReader isr = new InputStreamReader(inputStream);

BufferedReader reader = new BufferedReader(isr);

String jsonLine;

while ((jsonLine = reader.readLine()) != null) {

stringBuilder.append(jsonLine);

}

reader.close();

isr.close();

inputStream.close();

String result = stringBuilder .toString();

總結(jié)

以上是生活随笔為你收集整理的android json 解析图片路径,Android 使用Gson解析Asset 目录下的.json文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。