分别采用jsonArray下的getString(index)、getLong(index)、getDouble(index)、getInt(index)等方法。
同样,如果要获取java数组中的元素,只需要遍历该数组。
Java代码 收藏代码
/**
* 将json数组转化为Long型
* @param str
* @return
*/
public static Long[] getJsonToLongArray(String str) {
JSONArray jsonArray = JSONArray.fromObject(str)
Long[] arr=new Long[jsonArray.size()]
for(int i=0i<jsonArray.size()i++){
arr[i]=jsonArray.getLong(i)
System.out.println(arr[i])
}
return arr
}
/**
* 将json数组转化为String型
* @param str
* @return
*/
public static String[] getJsonToStringArray(String str) {
JSONArray jsonArray = JSONArray.fromObject(str)
String[] arr=new String[jsonArray.size()]
for(int i=0i<jsonArray.size()i++){
arr[i]=jsonArray.getString(i)
System.out.println(arr[i])
}
return arr
}
/**
* 将json数组转化为Double型
* @param str
* @return
*/
public static Double[] getJsonToDoubleArray(String str) {
JSONArray jsonArray = JSONArray.fromObject(str)
Double[] arr=new Double[jsonArray.size()]
for(int i=0i<jsonArray.size()i++){
arr[i]=jsonArray.getDouble(i)
}
return arr
}
/**
* 将json数组转化为Date型
* @param str
* @return
*/
public static Date[] getJsonToDateArray(String jsonString) {
JSONArray jsonArray = JSONArray.fromObject(jsonString)
Date[] dateArray = new Date[jsonArray.size()]
String dateString
Date date
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd")
for (int i = 0i <jsonArray.size()i++) {
dateString = jsonArray.getString(i)
try {
date=sdf.parse(dateString)
dateArray[i] = date
} catch (Exception e) {
e.printStackTrace()
}
}
return dateArray
}
public static void main(String[] args) {
JSONArray jsonLongs = new JSONArray()
jsonLongs.add(0, "111")
jsonLongs.add(1, "222.25")
jsonLongs.add(2, new Long(333))
jsonLongs.add(3, 444)
Long[] log=getJsonToLongArray(jsonLongs.toString())
for(int i=0i<log.lengthi++){
System.out.println(log[i])
}
JSONArray jsonStrs = new JSONArray()
jsonStrs.add(0, "2011-01-01")
jsonStrs.add(1, "2011-01-03")
jsonStrs.add(2, "2011-01-04 11:11:11")
Date[] d=getJsonToDateArray(jsonStrs.toString())
for(int i=0i<d.lengthi++){
System.out.println(d[i])
}
}
/*结果如下:
* 111
* 222
* 333
* 444
*
* Sat Jan 01 00:00:00 CST 2011
* Mon Jan 03 00:00:00 CST 2011
* Tue Jan 04 00:00:00 CST 2011
*/
ASP 获取JSON 数据:<script language="JScript" runat="Server">
function toObject(json) {
eval("var o=" + json)
return o
}
</script>
<%
Dim json
json ="{""px_name"":""第二届"",""px_ksjs"":""2014-03-11"",""px_kcfl"":""培训课程""}"
Set json = toObject(json)
Response.Write json.px_name &" <br/>"
Response.Write json.px_ksjs &" <br/>"
Response.Write json.px_kcfl &" <br/>"
Set json = Nothing
%>
2.写入数据库
OleDbConnection conn = new OleDbConnection()
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=|DataDirectory|db1.mdb"
OleDbCommand comm = new OleDbCommand()
conn.Open()
comm.Connection = conn
comm.CommandText = "Insert Into [Time] ([begin],[over],[name]) Values (@begin,@over,@name)"
comm.Parameters.AddWithValue("@begin", a)
comm.Parameters.AddWithValue("@over", b)
comm.Parameters.AddWithValue("@name", c)
comm.ExecuteNonQuery()
conn.Close()
注意:
1、以上代码是以access数据为例。
2、如果表里面有其他不能为空的字段存在,需要给他们提供值,自动增加的字段除外。
3、db1.mdb文件的只读属性去掉,在文件的属性-安全性里面,添加 everyone帐号和NETWORK Service 帐号可修改权限。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)