想法:将HTML放入JSON格式的文件中,并将其存储在/ res / raw中。(JSON不太挑剔)
将这样的数据记录存储在数组对象中:
[
{
"Field1": "String data",
"Field2": 12345,
"Field3": "more Strings",
"Field4": true
},
{
"Field1": "String data",
"Field2": 12345,
"Field3": "more Strings",
"Field4": true
},
{
"Field1": "String data",
"Field2": 12345,
"Field3": "more Strings",
"Field4": true
}
]
要读取您应用中的数据:
private ArrayList<Data> getData(String filename) {
ArrayList<Data> dataArray = new ArrayList<Data>();
try {
int id = getResources().getIdentifier(filename, "raw", getPackageName());
InputStream input = getResources().openRawResource(id);
int size = input.available();
byte[] buffer = new byte[size];
input.read(buffer);
String text = new String(buffer);
Gson gson = new Gson();
Type dataType = new TypeToken<List<Map<String, Object>>>() {}.getType();
List<Map<String, Object>> natural = gson.fromJson(text, dataType);
// now cycle through each object and gather the data from each field
for(Map<String, Object> json : natural) {
final Data ad = new Data(json.get("Field1"), json.get("Field2"), json.get("Field3"), json.get("Field4"));
dataArray.add(ad);
}
} catch (Exception e) {
e.printStackTrace();
}
return dataArray;
}
最后,Data该类只是公共变量的容器,以便于访问...
public class Data {
public String string;
public Integer number;
public String somestring;
public Integer site;
public boolean logical;
public Data(String string, Integer number, String somestring, boolean logical)
{
this.string = string;
this.number = number;
this.somestring = somestring;
this.logical = logical;
}
}