A. android讀取本地json文件的方法
本文實例講述了Android讀取本地json文件的方法。分享給大家供大家參考,具體如下:
1、讀取本地JSON ,但是顯示漢字亂碼
public static String readLocalJson(Context context, String fileName){ String jsonString=""; String resultString=""; try { BufferedReader bufferedReader=new BufferedReader(new InputStreamReader( context.getResources().getAssets().open(fileName))); while ((jsonString=bufferedReader.readLine())!=null) { resultString+=jsonString; } } catch (Exception e) { // TODO: handle exception } return resultString;}
2、讀取本地JSON,顯示漢字正確,txt文件設置時UTF-8,UNIX
public static String readLocalJson(Context context, String fileName){ String jsonString=""; String resultString=""; try { InputStream inputStream=context.getResources().getAssets().open(fileName); byte[] buffer=new byte[inputStream.available()]; inputStream.read(buffer); resultString=new String(buffer,"GB2312"); } catch (Exception e) { // TODO: handle exception } return resultString;}
B. 利用Github保存json文件在Android端接收使用
1.自己注冊好GitHub,創建倉庫等等。
2.新建一個文本文件,輸入要保存的數據,比如
然後保存,然後修改後綴名,其它後綴名應該也可以,我這里修改為.js文件
3.用Git該文件提交到GitHub,比如我的提交到HdyLove/Json/article.js,然後輸入地址類似 https://qiusunshine.github.io/HdyLove/Json/article.js 即可訪問相應的地址,具體用戶名,倉庫名修改為自己的就可以了。
我是使用Volley+Glide使用的,Volley的JsonObjectRequest可以將該網址內容解析為json格式,用AndroidStudio自帶的Json處理方法即可處理
C. 跪求 一個Android 讀取SD卡里的 json 文件的解析,要完整代碼
java">{
privatestaticfinalStringPATH=Environment.getExternalStorageDirectory()+"/123.json";
privateandroid.widget.TextViewjsonTv;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.jsonTv=(TextView)findViewById(R.id.jsonTv);
newThread(){
@Override
publicvoidrun(){
Messagemsg=handler.obtainMessage();
msg.obj=getFileFromSD(PATH);
msg.what=1;
handler.sendMessage(msg);
}
}.start();
}
privateHandlerhandler=newHandler(){
@Override
publicvoidhandleMessage(Messagemsg){
if(msg.what==1){
Stringresult=(String)msg.obj;
try{
JSONObjectjObj=newJSONObject(result);
jsonTv.setText("name:"+jObj.getString("name")+",age:"+jObj.getInt("age"));
}catch(JSONExceptione){
e.printStackTrace();
}
}
}
};
privateStringgetFileFromSD(Stringpath){
Stringresult="";
try{
FileInputStreamf=newFileInputStream(path);
BufferedReaderbis=newBufferedReader(newInputStreamReader(f));
Stringline="";
while((line=bis.readLine())!=null){
result+=line;
}
}catch(Exceptione){
e.printStackTrace();
}
returnresult;
}
}
<RelativeLayoutxmlns:android="
xmlns:tools="
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView
android:id="@+id/jsonTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</RelativeLayout>
最後,記得在AndroidMenifest文件中加入許可權
<uses-permissionandroid:name="android.permission.READ_EXTERNAL_STORAGE"/>
123.json的內容
{"name":"rock","age":20}
D. 安卓sdk11缺少json文件
1、首先打開本地管理。
2、其次看看你的json文件是不是放在assets文件夾里。
3、最後試試改掉你的json名稱,因為你的json名稱跟文件夾的名稱沖突了,會有影響。
E. 華為手機打開json文件
json格式文件打開的方式一:用記事本打開
右擊json格式文件,選擇打開方式,會有記事本可以選擇,點擊就可以打開了。
json格式文件打開的方式二:可以用瀏覽器打開
用樣的右擊json格式文件,選擇打開方式,若是不能直接看到瀏覽器,可以點擊選擇默認程序,裡面就會有瀏覽器可以選擇點擊打開。
json格式文件打開的方式三:可以利用文件編輯器打開
文件編輯器有很多種,像是sublime text、notepad等文件編輯器都可以用來打開json格式文件,但是你需要在電腦上安裝這些編輯器,(可以下載這些軟體的地址:php中文網工具下載)下面我們用sublime text為例來打開一個json格式文件。
F. android怎麼讀取外部json文件
比如說讀取sd卡里的
privatestaticStringSDCardPATH=Environment.getExternalStorageDirectory()+"/";
/**
*讀取文本文件
*
*@paramfilePath
*@return
*/
(StringfilePath){
StringBuildersb=newStringBuilder();
try{
Filefile=newFile(SDCardPATH+filePath);
InputStreamin=null;
in=newFileInputStream(file);
inttempbyte;
while((tempbyte=in.read())!=-1){
sb.append((char)tempbyte);
}
in.close();
}catch(Exceptione){
e.printStackTrace();
}
returnsb.toString();
}
然後你就可以進行你的解析json了。
G. Android 如何引用本地json文件
有時候遇到要一些模擬數據的時候,要麼寫個List<T>,要麼寫死.
然後數據比較多的時候可以引用本地資源文件,記錄下如何使用本地json文件
<1>在java同級目錄下創建"assets"資源文件夾
<2>編輯json文本內容
至於json文件夾內容 就自定義了,想要什麼內容寫什麼,對於一個做項目多了的開發者而言 json數據是熟悉到不能再熟悉的了
以下是我在淘寶一個個復制過來自己拼裝的一些商品數據
不需要加任何標識,只需要標準的json數據格式就可以了
<3>引用和json解析的工具類,解析用的 Gson也是經常用到的
<4>最後在需要的地方引用,"ExchangeBean"是根據json內容寫的一個模型,用於接收存放數據
有時間再補上demo,下面是效果圖:
H. android 如何載入json傳過來的圖片
如果json傳過來的圖片的話,一般會是base64編碼的吧,看看這個能不能幫到你
<img src=「data:image/png;base64,/+/AAABJRU5ErkJggg%3D%3D」/>
I. android 上拉載入的json數據怎麼處理
可以用第三方框架FastJson,直接將Json反射成類對象,只要按照Json的格式定義類就可以了,json的格式可以在線格式化下看的清晰點,關於框架可以網上下載很容易用的。
J. android載入assets中的json格式文件
assets資源目錄一般用於存放html文件、資料庫文件、javascript文件,assets目錄下的文件不會在R.java自動生成ID,所以讀取assets目錄下的文件必須指定文件的路徑
在代碼中使用AssertManager獲取文件的輸入流讀取
AssetManagerassetManager=context.getAssets();
try{
InputStreamis=assetManager.open("json.data");
BufferedReaderbr=newBufferedReader(newInputStreamReader(is));
StringBufferstringBuffer=newStringBuffer();
Stringstr=null;
while((str=br.readLine())!=null){
stringBuffer.append(str);
}
}catch(IOExceptione){
e.printStackTrace();
}
也可以把json文件放在res的raw目錄下
res/raw中的文件會被映射到R.java文件中,訪問的時候直接使用資源ID即R.id.filename;
但是需要注意的是assets允許有目錄結構,而raw不行
讀取方法大同小異
try{
InputStreamis=getResources().openRawResource(R.id.file);
BufferedReaderbr=newBufferedReader(newInputStreamReader(is));
StringBufferstringBuffer=newStringBuffer();
Stringstr=null;
while((str=br.readLine())!=null){
stringBuffer.append(str);
}
}catch(IOExceptione){
e.printStackTrace();
}