3

Wei-MengLeeの「BeginningAndroidApplicationDevelopment」から次のコードを借りました。

import android.content.Context;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;

public class DBAdapter {

    private static final String TAG = "DBAdapter";
    private static final String DATABASE_NAME = "MyDB";
    private static final int DATABASE_VERSION = 1;
    private static final String DATABASE_CREATE =
            "create table contacts (_id integer primary key autoincrement, "
                    + "name text not null, email text not null);";
    private final Context context;
    private DatabaseHelper DBHelper;
    private SQLiteDatabase db;
    public DBAdapter (Context ctx)
    {
        this.context = ctx;
        DBHelper = new DatabaseHelper(context);
    }
    
    private static class DatabaseHelper extends SQLiteOpenHelper
    {
        DatabaseHelper(Context context)
        {
            super(context, DATABASE_NAME, null, DATABASE_VERSION);
        }
        
        @Override
        public void onCreate(SQLiteDatabase db)
        {
            try {
                db.execSQL(DATABASE_CREATE);
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
        {
            Log.w(TAG, "Upgrading database from version " + oldVersion + " to "
                    + newVersion + ", which will destroy all old data");
            db.execSQL("DROP TABLE IF EXISTS contacts");
            onCreate(db);
        }
    }
}

もっとありますが、私は単純化しようとしています。

次のエラーが発生します。

説明リソースパスロケーションタイプ

トークン")"の構文エラー、{このトークンの後に予期されるDBAdapter.java

の終わりにonUpgrade

構文エラー、「}」を挿入してClassBodyDBAdapter.javaを完成させます

構文エラー、「}」を挿入してClassBodyDBAdapter.javaを完成させます

の終わりにonCreate

私はAndroidアプリを初めて使用するので、誰かがこれらのメッセージを理解するのを手伝ってくれませんか?

Eclipseが表示しているものは次のとおりです。

ここに画像の説明を入力してください

4

3 に答える 3

2

{}これらは、中かっこやかっこ()がファイル内でバランスが取れていないことを知らせるコンパイラからのメッセージです。このコードをコピーして貼り付けた場合は、最後の中括弧などを見逃していないことを確認してください。投稿したコードはバランスが取れているように見えるため、ファイルのさらに下にある必要があります。

HTH

于 2012-06-25T15:11:09.443 に答える
0

はい、上記のようにブレースが必要です。特に、コードをコピー/貼り付けしただけの場合。エラーを右クリックし、[移動] をクリックして、(問題に応じて) 必要なトークンを追加/削除します。

于 2014-03-03T23:44:38.803 に答える
0

コンストラクターの前に public を追加してみてください

DatabaseHelper(Context context)

する必要があります

public DatabaseHelper(Context context)
于 2012-06-25T15:11:30.433 に答える