Member 12901284 Ответов: 1

Как мне избавиться от этих ошибок?


Мой код android выдает много таких ошибок "Error: & lt;identifier> expected" или " Error: ';' expected", хотя все вроде бы в порядке. Пожалуйста, помогите мне, если кто-нибудь знает, почему это может произойти. Заранее спасибо.



customHttpClient.java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URI;
import java.util.ArrayList;

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.params.ConnManagerParams;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.impl.client.DefaultHttpClient;



public class CustomHttpClient {
    public static final int HTTP_TIMEOUT= 30*1000;
    private static HttpClient mHttpClient;
    private static HttpClient getHttpClient(){
        if (mHttpClient == null) {
            mHttpClient = new DefaultHttpClient();
            final HttpParams params = mHttpClient.getParams();
            HttpConnectionParams.setConnectionTimeout(params, HTTP_TIMEOUT);
            HttpConnectionParams.setSoTimeout(params, HTTP_TIMEOUT);
            ConnManagerParams.setTimeout(params, HTTP_TIMEOUT);
        }
        return mHttpClient;
    }

    public static String executeHttpPost(String url,ArrayList<NameValuePair>throws Exception){  //1 error in this line.
        BufferedReader in= null;
        try{ //1 error in this line.
            HttpClient client= getHttpClient();
            HttpPost request= new HttpPost(url); //1 error in this line.
            UrlEncodedFormEntity formEntity= new UrlEncodedFormEntity(postParameters);//1 error in this line.
            request.setEntity(formEntity); //1 error in this line. 
            HttpResponse response= client.execute(request); //1 error in this line.
            in= new BufferedReader(new InputStreamReader(response.getEntity().getContent())); //1 error in this line.
            StringBuffer sb= new StringBuffer(""); //1 error in this line.
            String line=""; //1 error in this line.
            String NL= System.getProperty("line.separator"); //1 error in this line.
            while((line=in.readLine())!= null){  //1 error in this line.
                sb.append(line+NL);
            } //1 error in this line.
            in.close();
            String result= sb.toString(); //1 error in this line.
            return result; //1 error in this line.

        }finally{ //1 error in this line.
            if(in!= null){
                try{
                    in.close();
                }catch(IOException e){ //1 error in this line.
                    e.printStackTrace();
                }//1 error in this line.
            }
        }
    }

    public static String executeHttpGet(String url) throws Exception{ //1 error in this line.
        BufferedReader in= null;
        try{ //1 error in this line.
            HttpClient client= getHttpClient();
            HttpGet request= new HttpGet(); //1 error in this line.
            request.setURI(new URI(url)); //1 error in this line.
        } //1 error in this line.
    }


}


Ошибки выше - это " ошибка. ожидаемый класс, интерфейс или перечисление "



LogIn.java
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.logging.ErrorManager;

import static android.R.attr.id;
import static android.R.id.content;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;



public class LogIn extends Activity {

    Button b;
    EditText t1,t2;
    TextView error;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        b=(Button)findViewById(R.id.button);
        t1=(EditText)findViewById(R.id.editText);
        t2=(EditText)findViewById(R.id.editText2);
        error=(TextView)findViewById(R.id.textView6);

        b.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v){
                ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();
                postParameters.add(new BasicNameValuePair("email", t1.getText().toString()));
                postParameters.add(new BasicNameValuePair("password", t2.getText().toString()));

                String response = null;
                try {
                    response = CustomHttpClient.executeHttpPost("<target page url>", postParameters);
                    String res = response.toString();
                    res = res.replaceAll("\\s+", "");
                    if (res.equals(1))
                        error.setText("Correct Credentials.");
                    else
                        error.setText("Invalid Credentials.");
                } catch (Exception ex) {
                    t1.setText(ex.toString());
                }
            }
        });
    }// Error in this line.


Ошибка выше - " ошибка: достигнут конец файла при разборе "



MainActivity.java
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.os.Handler;

public class MainActivity extends AppCompatActivity {

    private static int SPLASH_TIME=3000;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        int secondsDelayed = 3;
        new Handler().postDelayed(new Runnable() {
            public void run() {
                startActivity(new Intent(MainActivity.this, LogIn.class));
                finish();
            }
        } secondsDelayed * 1000); //4 errors here.
    }
}

Ошибки выше - это "ошибка") " ожидаемая "
" ошибка. ';' ожидаемый "
" ошибка. незаконный запуск типа "

Что я уже пробовал:

Я пытался переписать код.

CPallini

Вы также должны прокричать оскорбительную строку кода.

Richard MacCutchan

Если бы все было хорошо, то это не давало бы вам ошибок.

Member 12901284

Мне жаль, что я не сделал этого раньше. Теперь я этого не знаю. Пожалуйста, взгляните.

Member 12901284

Это очевидно :p
Я имел в виду, что все "выглядит" хорошо..
Пожалуйста, взгляните на код.. Спасибо.

Richard MacCutchan

Я посмотрел и не вижу ничего очевидного. таким образом, есть вероятность, что есть что-то более глубокое, вызывающее проблемы, возможно, один из импортированных файлов вызывает проблему. К сожалению, это то, что вам придется диагностировать для себя, потому что есть слишком много, чтобы пробираться, чтобы найти, где начинается причина.

Member 12901284

Спасибо, что нашли время и изучили код. Я проверю импортированные файлы. Спасибо.

1 Ответов

Рейтинг:
11

Patrice T

Цитата:
Пожалуйста, помогите мне, если кто-нибудь знает, почему это может произойти.
Да, у вас есть ошибки в вашем коде, но без того, чтобы увидеть этот код, мы не можем помочь.

Для получения реальной помощи покажите код и добавьте комментарий в код, чтобы показать нам положение ошибок. включайте сообщения об ошибках в комментарии.

[Обновление]
Проверьте, не забыли ли вы } в очереди перед этим.
public static String executeHttpPost(String url,ArrayList<NameValuePair>throws Exception){  //5 errors in this line.

Примечание: эта ошибка порождает другие ошибки. исправьте это и обновите вопрос.


Member 12901284

Я хотел сделать это в первую очередь, но я не знаю, как прикрепить скриншоты здесь..

Patrice T

Исходный код - это текст.
вставьте комментарии в свой код, говоря: "ошибка это в следующей строке"
и вставьте свой код, выберите код и используйте кнопку код, чтобы отформатировать его.
Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.

Member 12901284

Сделал, как ты сказал.. Пожалуйста, смотрите и отвечайте.. Спасибо

Patrice T

И что же произошло ?
Решает ли он некоторые ошибки ?

Member 12901284

Я сделал это, и это действительно решило много ошибок, но теперь у меня есть эти ошибки. Также, пожалуйста, посмотрите и другие файлы классов java. У них тоже есть ошибки. Спасибо.

Jochen Arndt

Просто смотреть в вашем коде:

} secondsDelayed * 1000); //здесь 4 ошибки.

Есть закрывающая скобка, но нет открывающей.
В то время как "secondsDelayed * 1000" синтаксически возможно, это не имеет никакого смысла (результат не используется) и, вероятно, это не то, чего вы хотите достичь.

Member 12901284

Открывающая скобка есть в приведенном выше классе.. Но я так и думал..
мой предыдущий код был приведен ниже... но это не работало, поэтому я просто скопировал этот код выше.. пожалуйста, скажите мне, могу ли я использовать приведенный ниже код для заставки.


Thread timerThread= Новый Поток();
общественного недействительными Run(){
пробовать{
сон(3000);
}catch(InterruptedException e){
е.печатные();
}наконец{
Intent intent = новое намерение(SplashScreen. this,MainActivity.class);
startActivity (намерение);
}
}
};
timerThread.начать();

@Override / / чтобы завершить действие, чтобы оно не возвращалось к этому действию при нажатии назад
охраняемых недействительными методов onPause() {
супер.методов onPause();
заканчивать();
}

Member 12901284

Кроме того, не могли бы вы, пожалуйста, заглянуть в "LogIn.java-файл класса.. Я чувствую, что там есть логическая ошибка, связанная с этим.. Спасибо

Jochen Arndt

Не скобки"}". Скобка.

Jochen Arndt

Я не знаю Java.

Но даже без знания Java существуют очевидные синтаксические ошибки.
Вы должны попытаться решить их сами. Компилятор рассказывает вам о них, и решение их самостоятельно является частью процесса обучения языку программирования.

Если вы попросите здесь, чтобы все ваши ошибки были решены, вы ничего не узнаете.

Если вы застряли с одной ошибкой, поднимите новый вопрос, разместив только соответствующую часть кода.

Member 12901284

Насколько я думаю, вижу, что скобка правильная. И я хотел узнать о логической части кода. Кроме того, я буду иметь в виду ваш совет. Спасибо, что нашли время и ответили.

Patrice T

Извините, я не являюсь пользователем Java, я не могу вам помочь в этом.
Откройте новый вопрос.

Я смог найти вашу проблему, потому что непревзойденные фигурные скобки-это простая проблема, общая с C/C++