- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
制作 json 数组但显示错误。尝试以下链接但没有任何反应:-
Java 文件
try
{
View view;
for (int i = 0; i < list_lay.getChildCount(); i++)
{
view=list_lay.getChildAt(i);
JSONObject j1=new JSONObject();
TextView main = (TextView) view.findViewById(R.id.main);
String[] m=main.getTag().toString().split("::::");
j1.put("account_id",m[0]);
j1.put("address_1",m[1]);
j1.put("address_2",m[2]);
j1.put("city",m[3]);
j1.put("email",m[4]);
j1.put("id",m[5]);
j1.put("manager_name",m[6]);
j1.put("name",m[7]);
j1.put("zip",m[11]);
j1.put("state",m[9]);
j1.put("phone",m[8]);
j1.put("website",m[10]);
LinearLayout data_main1=(LinearLayout) view.findViewById(R.id.data_main1);;
JSONArray j_class=new JSONArray();
System.out.println("data_main1.getChildCount() => "+data_main1.getChildCount());
for (int k = 0; k < data_main1.getChildCount(); k++)
{
View view1=data_main1.getChildAt(k);
TextView name = (TextView) view1.findViewById(R.id.name);
CheckBox cb = (CheckBox) view1.findViewById(R.id.checkBox1);
if(cb.isChecked())
{
JSONObject j1_class=new JSONObject();
String [] l=name.getTag().toString().split("::::");
j1_class.put("id",(Object)l[0]);
j1_class.put("teacher",(Object)l[1]);
j1_class.put("name",(Object)l[2]);
j1_class.put("enrolled",(Object)"yes");
j_class.put((Object)j1);
System.out.println("j1 => "+(Object)j1);
System.out.println("j_class => "+(Object)j_class);
}
}
j1.put("classes", (Object)j_class);
json.put((Object)j1);
System.out.println("json => "+json);
}
System.out.println("array => "+(Object)json);
List <NameValuePair> nvps = new ArrayList <NameValuePair>();
nvps.add(new BasicNameValuePair("params", json.toString()));
nvps.add(new BasicNameValuePair("student_id", getIntent().getStringExtra("sid")));
nvps.add(new BasicNameValuePair("account_id", HomeScreen.account_id));
String result = SendJSON.sendJson(
"http://example.com/mob/xxx.php"
,nvps,"PHPSESSID=lelrk87empdqsa3assadags9kpsncuv6");
return result;
}
catch (Exception e)
{
// TODO: handle exception
e.printStackTrace();
}
逻辑猫
10-04 21:55:49.309: E/AndroidRuntime(13183): FATAL EXCEPTION: AsyncTask #1
10-04 21:55:49.309: E/AndroidRuntime(13183): java.lang.RuntimeException: An error occured while executing doInBackground()
10-04 21:55:49.309: E/AndroidRuntime(13183): at android.os.AsyncTask$3.done(AsyncTask.java:299)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
10-04 21:55:49.309: E/AndroidRuntime(13183): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.lang.Thread.run(Thread.java:856)
10-04 21:55:49.309: E/AndroidRuntime(13183): Caused by: java.lang.StackOverflowError
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.lang.String._getChars(String.java:913)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:147)
10-04 21:55:49.309: E/AndroidRuntime(13183): at java.lang.StringBuilder.append(StringBuilder.java:216)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.beforeValue(JSONStringer.java:412)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.open(JSONStringer.java:178)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.array(JSONStringer.java:139)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:570)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:237)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONArray.writeTo(JSONArray.java:572)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONStringer.value(JSONStringer.java:233)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org.json.JSONObject.writeTo(JSONObject.java:667)
10-04 21:55:49.309: E/AndroidRuntime(13183): at org
10-04 21:56:02.329: E/WindowManager(13183): Activity xicom.biz.dancestudio.HomeScreen has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@41fdc290 that was originally added here
10-04 21:56:02.329: E/WindowManager(13183): android.view.WindowLeaked: Activity xicom.biz.dancestudio.HomeScreen has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@41fdc290 that was originally added here
10-04 21:56:02.329: E/WindowManager(13183): at android.view.ViewRootImpl.<init>(ViewRootImpl.java:419)
10-04 21:56:02.329: E/WindowManager(13183): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:322)
10-04 21:56:02.329: E/WindowManager(13183): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:234)
10-04 21:56:02.329: E/WindowManager(13183): at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:153)
10-04 21:56:02.329: E/WindowManager(13183): at android.view.Window$LocalWindowManager.addView(Window.java:557)
10-04 21:56:02.329: E/WindowManager(13183): at android.app.Dialog.show(Dialog.java:277)
10-04 21:56:02.329: E/WindowManager(13183): at xicom.biz.dancestudio.more.StudentClassesDetail$SaveDialog.onPreExecute(StudentClassesDetail.java:103)
10-04 21:56:02.329: E/WindowManager(13183): at android.os.AsyncTask.executeOnExecutor(AsyncTask.java:586)
10-04 21:56:02.329: E/WindowManager(13183): at android.os.AsyncTask.execute(AsyncTask.java:534)
10-04 21:56:02.329: E/WindowManager(13183): at xicom.biz.dancestudio.more.StudentClassesDetail$2.onClick(StudentClassesDetail.java:86)
10-04 21:56:02.329: E/WindowManager(13183): at android.view.View.performClick(View.java:4191)
10-04 21:56:02.329: E/WindowManager(13183): at android.view.View$PerformClick.run(View.java:17229)
10-04 21:56:02.329: E/WindowManager(13183): at android.os.Handler.handleCallback(Handler.java:615)
10-04 21:56:02.329: E/WindowManager(13183): at android.os.Handler.dispatchMessage(Handler.java:92)
10-04 21:56:02.329: E/WindowManager(13183): at android.os.Looper.loop(Looper.java:137)
10-04 21:56:02.329: E/WindowManager(13183): at android.app.ActivityThread.main(ActivityThread.java:4960)
10-04 21:56:02.329: E/WindowManager(13183): at java.lang.reflect.Method.invokeNative(Native Method)
10-04 21:56:02.329: E/WindowManager(13183): at java.lang.reflect.Method.invoke(Method.java:511)
10-04 21:56:02.329: E/WindowManager(13183): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
10-04 21:56:02.329: E/WindowManager(13183): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
10-04 21:56:02.329: E/WindowManager(13183): at dalvik.system.NativeStart.main(Native Method)
我不明白发生了什么,因为在此之前我会尝试很多次。所以任何人都可以帮助我
回答
通过对 json 值使用 .toString 解决问题。
前
try
{
View view;
for (int i = 0; i < list_lay.getChildCount(); i++)
{
view=list_lay.getChildAt(i);
JSONObject j1=new JSONObject();
TextView main = (TextView) view.findViewById(R.id.main);
String[] m=main.getTag().toString().split("::::");
j1.put("account_id",m[0]);
j1.put("address_1",m[1]);
j1.put("address_2",m[2]);
j1.put("city",m[3]);
j1.put("email",m[4]);
j1.put("id",m[5]);
j1.put("manager_name",m[6]);
j1.put("name",m[7]);
j1.put("zip",m[11]);
j1.put("state",m[9]);
j1.put("phone",m[8]);
j1.put("website",m[10]);
LinearLayout data_main1=(LinearLayout) view.findViewById(R.id.data_main1);;
JSONArray j_class=new JSONArray();
System.out.println("data_main1.getChildCount() => "+data_main1.getChildCount());
for (int k = 0; k < data_main1.getChildCount(); k++)
{
View view1=data_main1.getChildAt(k);
TextView name = (TextView) view1.findViewById(R.id.name);
CheckBox cb = (CheckBox) view1.findViewById(R.id.checkBox1);
if(cb.isChecked())
{
JSONObject j1_class=new JSONObject();
String [] l=name.getTag().toString().split("::::");
j1_class.put("id",l[0].toString());
j1_class.put("teacher",l[1].toString());
j1_class.put("name",l[2].toString());
j1_class.put("enrolled","yes".toString());
j_class.put(j1.toString());
System.out.println("j1 => "+j1.toString());
System.out.println("j_class => "+j_class.toString());
}
}
j1.put("classes", j_class.toString());
json.put(j1.toString());
System.out.println("json => "+json.toString());
}
System.out.println("array => "+json.toString());
}
catch (Exception e)
{
// TODO: handle exception
}
但在此之前,我仍然对 bcz 感到困惑,我制作了很多次 json 数组和 json 对象,但从未见过那种错误。
那么现在我的问题是这个问题是怎么回事?
最佳答案
您已经建立了一个循环结构:j_class
包含 j1
,j1
包含 j_class
。
可能您想将 j1_class
放入 j_class
中。
关于android - 制作 json 数组对象时显示 java.lang.StackOverflowError 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19186429/
我已经使用 vue-cli 两个星期了,直到今天一切正常。我在本地建立这个项目。 https://drive.google.com/open?id=0BwGw1zyyKjW7S3RYWXRaX24tQ
您好,我正在尝试使用 python 库 pytesseract 从图像中提取文本。请找到代码: from PIL import Image from pytesseract import image_
我的错误 /usr/bin/ld: errno: TLS definition in /lib/libc.so.6 section .tbss mismatches non-TLS reference
我已经训练了一个模型,我正在尝试使用 predict函数但它返回以下错误。 Error in contrasts<-(*tmp*, value = contr.funs[1 + isOF[nn]])
根据Microsoft DataConnectors的信息我想通过 this ODBC driver 创建一个从 PowerBi 到 PostgreSQL 的连接器使用直接查询。我重用了 Micros
我已经为 SoundManagement 创建了一个包,其中有一个扩展 MediaPlayer 的类。我希望全局控制这个变量。这是我的代码: package soundmanagement; impo
我在Heroku上部署了一个应用程序。我正在使用免费服务。 我经常收到以下错误消息。 PG::Error: ERROR: out of memory 如果刷新浏览器,就可以了。但是随后,它又随机发生
我正在运行 LAMP 服务器,这个 .htaccess 给我一个 500 错误。其作用是过滤关键字并重定向到相应的域名。 Options +FollowSymLinks RewriteEngine
我有两个驱动器 A 和 B。使用 python 脚本,我在“A”驱动器中创建一些文件,并运行 powerscript,该脚本以 1 秒的间隔将驱动器 A 中的所有文件复制到驱动器 B。 我在 powe
下面的函数一直返回这个错误信息。我认为可能是 double_precision 字段类型导致了这种情况,我尝试使用 CAST,但要么不是这样,要么我没有做对...帮助? 这是错误: ERROR: i
这个问题已经有答案了: Syntax error due to using a reserved word as a table or column name in MySQL (1 个回答) 已关闭
我的数据库有这个小问题。 我创建了一个表“articoli”,其中包含商品的品牌、型号和价格。 每篇文章都由一个 id (ID_ARTICOLO)` 定义,它是一个自动递增字段。 好吧,现在当我尝试插
我是新来的。我目前正在 DeVry 在线学习中级 C++ 编程。我们正在使用 C++ Primer Plus 这本书,到目前为止我一直做得很好。我的老师最近向我们扔了一个曲线球。我目前的任务是这样的:
这个问题在这里已经有了答案: What is an undefined reference/unresolved external symbol error and how do I fix it?
我的网站中有一段代码有问题;此错误仅发生在 Internet Explorer 7 中。 我没有在这里发布我所有的 HTML/CSS 标记,而是发布了网站的一个版本 here . 如您所见,我在列中有
如果尝试在 USB 设备上构建 node.js 应用程序时在我的树莓派上使用 npm 时遇到一些问题。 package.json 看起来像这样: { "name" : "node-todo",
在 Python 中,您有 None单例,在某些情况下表现得很奇怪: >>> a = None >>> type(a) >>> isinstance(a,None) Traceback (most
这是我的 build.gradle (Module:app) 文件: apply plugin: 'com.android.application' android { compileSdkV
我是 android 的新手,我的项目刚才编译和运行正常,但在我尝试实现抽屉导航后,它给了我这个错误 FAILURE: Build failed with an exception. What wen
谁能解释一下?我想我正在做一些非常愚蠢的事情,并且急切地等待着启蒙。 我得到这个输出: phpversion() == 7.2.25-1+0~20191128.32+debian8~1.gbp108
我是一名优秀的程序员,十分优秀!