如果android服务器上的数据不可用,如何使用json打印字符串

如果android服务器上的数据不可用,如何使用json打印字符串,android,json,Android,Json,谢谢大家。我终于找到了解决方案。如果我们想检查字符串是空的还是空的,我们必须修剪()字符串 String url="http://app name/Api/GetJobDetails/GetJobDetails?COMP_REQ_ID=" + title + "&StuEmail=" + e ; // this is the url AQuery mAQuery = new AQuery(SecondActivity.this); mAQuery.a

谢谢大家。我终于找到了解决方案。如果我们想检查字符串是空的还是空的,我们必须修剪()字符串

      String url="http://app name/Api/GetJobDetails/GetJobDetails?COMP_REQ_ID=" + title + "&StuEmail=" + e ;  // this is the url
      AQuery mAQuery = new AQuery(SecondActivity.this);
      mAQuery.ajax(url, String.class, new AjaxCallback<String>() {
      public Object dataSource;
      @Override
      public void callback(String url, String data, AjaxStatus status)
      {
      uper.callback(url, data, status);
      if (null != data && status.getCode() != -101) {
      String StringData = "" + data;
      try {
              JSONArray rootArray = new JSONArray(StringData);
              int len = rootArray.length();
              for (int i = 0; i < len; ++i) {
              JSONObject json = rootArray.optJSONObject(i);
              String Salary = json.optString("Req_From_Sal");
              if (Salary == null || Salary.trim().equals("null") ||   Salary.trim().length() <= 0) {
              b14.setText("Not Mentioned");
              }
              else
              {
              b14.setText(""+Salary);
              }

        }
      } 
    }
});
stringurl=”http://app name/Api/GetJobDetails/GetJobDetails?COMP_REQ_ID=“+title+”&StuEmail=“+e;”/这是url
AQuery mAQuery=新的AQuery(SecondActivity.this);
ajax(url,String.class,新的AjaxCallback(){
公共对象数据源;
@凌驾
公共无效回调(字符串url、字符串数据、AjaxStatus状态)
{
超级回调(url、数据、状态);
if(null!=数据和状态.getCode()!=-101){
字符串StringData=”“+数据;
试一试{
JSONArray rootArray=新的JSONArray(StringData);
int len=rootArray.length();
对于(int i=0;i如果(Salary==null | | | Salary.trim().equals(“null”)| | Salary.trim().length()检查字符串是否为null或空白,然后打印所需消息。例如:

if(StringData.length()==0){
//show message
}else{
 JSONArray rootArray = new JSONArray(StringData);

          int len = rootArray.length();
          for (int i = 0; i < len; ++i) {
          JSONObject json = rootArray.optJSONObject(i);
          String Salary = json.optString("Req_From_Sal");
          if (Salary == null)
          b14.setText("NA"+Salary);
          else
          b14.setText(""+Salary)
          }
}
if(StringData.length()==0){
//显示消息
}否则{
JSONArray rootArray=新的JSONArray(StringData);
int len=rootArray.length();
对于(int i=0;i

此外,如果您想为特定用户显示特定消息,则要求提供success参数。
如果success==1
则使用逻辑,否则如果
success==0
则要求提供message参数,并对其进行解析并向用户显示谢谢大家。最后我得到了解决方案。这里是编辑代码。要检查字符串是否为null或为空,我们必须修剪()字符串

      String url="http://app name/Api/GetJobDetails/GetJobDetails?COMP_REQ_ID=" + title + "&StuEmail=" + e ;  // this is the url
      AQuery mAQuery = new AQuery(SecondActivity.this);
      mAQuery.ajax(url, String.class, new AjaxCallback<String>() {
      public Object dataSource;
      @Override
      public void callback(String url, String data, AjaxStatus status)
      {
      uper.callback(url, data, status);
      if (null != data && status.getCode() != -101) {
      String StringData = "" + data;
      try {
              JSONArray rootArray = new JSONArray(StringData);
              int len = rootArray.length();
              for (int i = 0; i < len; ++i) {
              JSONObject json = rootArray.optJSONObject(i);
              String Salary = json.optString("Req_From_Sal");
              if (Salary == null || Salary.trim().equals("null") ||   Salary.trim().length() <= 0) {
              b14.setText("Not Mentioned");
              }
              else
              {
              b14.setText(""+Salary);
              }

        }
      } 
    }
});
Android端:-

String url="http://app name/Api/GetJobDetails/GetJobDetails?COMP_REQ_ID=" + title + "&StuEmail=" + e ;  // this is the url


                AQuery mAQuery = new AQuery(SecondActivity.this);
                mAQuery.ajax(url, String.class, new AjaxCallback<String>() {

                public Object dataSource;

                 @Override

                 public void callback(String url, String data, AjaxStatus status) {

                 uper.callback(url, data, status);

                 if (null != data && status.getCode() != -101) {

                 String StringData = "" + data;
                 try {
                 JSONArray rootArray = new JSONArray(StringData);
                 int len = rootArray.length();
                 for (int i = 0; i < len; ++i) {
                 JSONObject json = rootArray.optJSONObject(i);

                 String Job_Title = json.optString("Req_Title");
                 String Designation = json.optString("Req_Designation_Role");
                 String Job_Type = json.optString("Req_Job_Type");
                String Salary = json.optString("Req_From_Sal");


                 if(Job_Title == null || Job_Title .trim().equals("null") ||Job_Title .trim().length<=0){
                   b1.setText("Job title not set.");
                }else{
                   b1.setText("" +Job_Title); 
                }

                if(Designation == null || Designation.trim().equals("null") ||Designation.trim().length() <= 0){
                   b3.setText("Job Designation not set.");
                }else{
                   b3.setText("" +Designation); 
                }

                 if(Job_Type == null || Job_Type.trim().equals("null") || Job_Type.trim().length() <= 0){
                   b13.setText("Job Type not set.");
                }else{
                  b13.setText("" +Job_Type);
                }

                 if(Salary == null || Salary.trim().equals("null") || Salary.trim().length() <= 0){
                   b14.setText("Not yet Mentioned");
                }else{
                  b14.setText(""+Salary);
                }

            }
          } 
        }
    });
stringurl=”http://app name/Api/GetJobDetails/GetJobDetails?COMP_REQ_ID=“+title+”&StuEmail=“+e;//这是url
AQuery mAQuery=新的AQuery(SecondActivity.this);
ajax(url,String.class,新的AjaxCallback(){
公共对象数据源;
@凌驾
公共无效回调(字符串url、字符串数据、AjaxStatus状态){
超级回调(url、数据、状态);
if(null!=数据和状态.getCode()!=-101){
字符串StringData=”“+数据;
试一试{
JSONArray rootArray=新的JSONArray(StringData);
int len=rootArray.length();
对于(int i=0;i如果(Job_Title==null | | Job_Title.trim().equals(“null”)| | Job_Title.trim().length1。检查
StringData
是否为null或空

2.检查是否
rootArray.length()

    if(StringData!=null) {
        JSONArray rootArray = new JSONArray(StringData);
        for (int i = 0; i < rootArray.length(); ++i) {
            JSONObject json = rootArray.optJSONObject(i);
            String Job_Title = json.optString("Req_Title", "default_value");
            String Designation = json.optString("Req_Designation_Role", "default_value");
            String Salary = json.optString("Req_From_Sal", "Salary Not Mentioned");
            b14.setText("" + Salary);
        }
    }else{
        Log.d(TAG, "Invalid JSON Data");
        b14.setText("Salary Not Mentioned");
    }
if(StringData!=null){
JSONArray rootArray=新的JSONArray(StringData);
对于(int i=0;i
使用TextUtils.isEmpty()检查空字符串和空字符串。 在从对象获取任何变量之前,始终添加空检查

修改代码如下:

JSONArray rootArray = new JSONArray(StringData);
if(rootArray!=null&&rootArray.length())

{
    int len = rootArray.length();
    for (int i = 0; i < len; ++i)

    {
        JSONObject json = rootArray.optJSONObject(i);
        if (json != null) {

            String Job_Title = json.optString("Req_Title");
            String Designation = json.optString("Req_Designation_Role");
            String Job_Type = json.optString("Req_Job_Type");
            String Salary;
            if (json.has("Req_From_Sal") && !TextUtils.isEmpty(json.getString("Req_From_Sal")) {
                Salary = json.optString("Req_From_Sal");
            } else {
                Salary = "Not available";
            }
            b14.setText(Salary);
        }
    }
}
JSONArray rootArray=新的JSONArray(StringData);
if(rootArray!=null&&rootArray.length()
{
int len=rootArray.length();
对于(int i=0;i
if(Salary==null | | | Salary.equals(“null”))我不知道您要检查的确切位置,但如果
(Salary==null)
,这是错误的。请不要使用
if(TextUtils.isEmpty(Salary))
的可能重复项,我没有在本地对JSON值进行排序
字符串Salary=JSON.optString(“Req_From_Sal”)\if(!Salary.isEmpty()){b14.setText(“+Salary);}否则{//显示错误消息}
请解释如何doOkay@AnushaDandu的过程。即使你也可以试着理解我上面所写的解释。无论如何,我会详细解释你。如何从服务器获得响应请告诉我,你是使用截击来做来自服务器的请求还是java的HttpClient类?你是在做api重新请求(Web服务)或者在本地存储json?我很容易向您详细说明。我使用web API提供服务。如果数据可用,我将检索数据。如果数组中的某个项目没有数据,我只想打印一个字符串。我尝试了,但不起作用。例如,如果数据可用