Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将当前日期对应的数据从Sqlitedatabase读入setText_Java_Android_Sqlite - Fatal编程技术网

Java 如何将当前日期对应的数据从Sqlitedatabase读入setText

Java 如何将当前日期对应的数据从Sqlitedatabase读入setText,java,android,sqlite,Java,Android,Sqlite,这是我的DatabaseCreator.java文件 package com.example.myapp; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import android.content.Context; import android.database.Cursor; import andro

这是我的DatabaseCreator.java文件

package com.example.myapp;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

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

public class DataBaseCreator extends SQLiteOpenHelper {
   private static String DB_PATH = "/data/data/com.example.myapp/databases/people.db";
   private static String DB_NAME = "people.db";
   private static int DB_VERSION = 1;
   public static String DATABASE_TABLE = "people_table";
   public String temp = "";

   private SQLiteDatabase myDataBase;
   private final Context myContext;

   public DataBaseCreator(Context context) {
       super(context, DB_NAME, null, DB_VERSION);
       this.myContext = context;

   }


   public void openDataBase(String date) throws SQLException {

       // Open the database
       String myPath = "/data/data/com.example.myapp/databases/people.db";
       myDataBase = SQLiteDatabase.openDatabase(myPath, null,
               SQLiteDatabase.OPEN_READONLY);
       passText(date);

   }

   public final String passText(String date) {

       Cursor cursor = myDataBase.query(DATABASE_TABLE, null, null, null,
               null, null, null);

       cursor.moveToFirst();

           temp += cursor.getString(1); 
       return temp;
   }

   @Override
   public void onCreate(SQLiteDatabase db) {
       // TODO Auto-generated method stub

   }

   @Override
   public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
       // TODO Auto-generated method stub

   }



}
package com.example.myapp;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteException;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Calendar;


public class Activity6 extends AppCompatActivity {

    ArrayList<String > listItem;
    ArrayAdapter <String> adapter;

    ListView userList;




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

        TextView textView;
        TextView textview2;
        textView = findViewById(R.id.TextView2);
        textview2 = findViewById(R.id.textViewsecond);

        Calendar cal = Calendar.getInstance();

        int currentyear = cal.get(Calendar.YEAR);
        int currentmonth = cal.get(Calendar.MONTH);
        int currentday = cal.get(Calendar.DAY_OF_MONTH);

       String arr[]= {"January", "February","March", "April", "May", "June","July", "August","September","October","November","December"};

        String str1 = Integer.toString(currentday);
        String str2 = arr[currentmonth];
        String str3 = Integer.toString(currentyear);

        String str4 = str1 + " "+ str2 + " "+ str3;
        

        DataBaseCreator myDbHelper = new DataBaseCreator(this);

   

        myDbHelper.openDataBase(str4);

        textView.setText(String.valueOf(str4));

        textview2.setText(myDbHelper.temp);



        
    }






}
这是我的Activity6.java文件

package com.example.myapp;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

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

public class DataBaseCreator extends SQLiteOpenHelper {
   private static String DB_PATH = "/data/data/com.example.myapp/databases/people.db";
   private static String DB_NAME = "people.db";
   private static int DB_VERSION = 1;
   public static String DATABASE_TABLE = "people_table";
   public String temp = "";

   private SQLiteDatabase myDataBase;
   private final Context myContext;

   public DataBaseCreator(Context context) {
       super(context, DB_NAME, null, DB_VERSION);
       this.myContext = context;

   }


   public void openDataBase(String date) throws SQLException {

       // Open the database
       String myPath = "/data/data/com.example.myapp/databases/people.db";
       myDataBase = SQLiteDatabase.openDatabase(myPath, null,
               SQLiteDatabase.OPEN_READONLY);
       passText(date);

   }

   public final String passText(String date) {

       Cursor cursor = myDataBase.query(DATABASE_TABLE, null, null, null,
               null, null, null);

       cursor.moveToFirst();

           temp += cursor.getString(1); 
       return temp;
   }

   @Override
   public void onCreate(SQLiteDatabase db) {
       // TODO Auto-generated method stub

   }

   @Override
   public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
       // TODO Auto-generated method stub

   }



}
package com.example.myapp;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteException;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Calendar;


public class Activity6 extends AppCompatActivity {

    ArrayList<String > listItem;
    ArrayAdapter <String> adapter;

    ListView userList;




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

        TextView textView;
        TextView textview2;
        textView = findViewById(R.id.TextView2);
        textview2 = findViewById(R.id.textViewsecond);

        Calendar cal = Calendar.getInstance();

        int currentyear = cal.get(Calendar.YEAR);
        int currentmonth = cal.get(Calendar.MONTH);
        int currentday = cal.get(Calendar.DAY_OF_MONTH);

       String arr[]= {"January", "February","March", "April", "May", "June","July", "August","September","October","November","December"};

        String str1 = Integer.toString(currentday);
        String str2 = arr[currentmonth];
        String str3 = Integer.toString(currentyear);

        String str4 = str1 + " "+ str2 + " "+ str3;
        

        DataBaseCreator myDbHelper = new DataBaseCreator(this);

   

        myDbHelper.openDataBase(str4);

        textView.setText(String.valueOf(str4));

        textview2.setText(myDbHelper.temp);



        
    }






}
package com.example.myapp;
导入androidx.appcompat.app.appcompat活动;
导入android.content.Context;
导入android.database.Cursor;
导入android.database.SQLException;
导入android.database.sqlite.SQLiteDatabase;
导入android.database.sqlite.SQLiteException;
导入android.os.Bundle;
导入android.util.Log;
导入android.widget.ArrayAdapter;
导入android.widget.ListView;
导入android.widget.TextView;
导入java.io.FileOutputStream;
导入java.io.IOException;
导入java.io.InputStream;
导入java.io.OutputStream;
导入java.util.ArrayList;
导入java.util.Calendar;
公共类活动6扩展了AppCompatActivity{
ArrayList列表项;
阵列适配器;
ListView用户列表;
数据库辅助数据库;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_6);
文本视图文本视图;
文本视图文本视图2;
textView=findViewById(R.id.TextView2);
textview2=findViewById(R.id.textViewsecond);
Calendar cal=Calendar.getInstance();
int currentyear=cal.get(日历年);
int currentmonth=cal.get(日历月);
int currentday=cal.get(日历日/月);
字符串arr[]={“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”、“九月”、“十月”、“十一月”、“十二月”};
字符串str1=Integer.toString(currentday);
字符串str2=arr[currentmount];
字符串str3=Integer.toString(当前年份);
字符串str4=str1+“”+str2+“”+str3;
DataBaseCreator myDbHelper=新的DataBaseCreator(此);
openDataBase(str4);
textView.setText(String.valueOf(str4));
textview2.setText(myDbHelper.temp);
}
}
我的数据库包含:

第1列-id,第2列-日期,第3列-任务

我需要的输出:

我作为str4传递的日期(也是数据库中第二列的值)必须用于从第三列获取任务(我正试图在passtext()中执行此操作)


请帮助

为什么不使用“选择…从…从…何处…”编写正确的Sql查询?谢谢!当我给它:`int num=1;字符串数据=整数.toString(num);SQLiteDatabase db=this.getWritableDatabase();Cursor cursor1=db.rawQuery(“从people_表中选择*,其中ID='data',null);返回游标1;=>游标1中没有返回任何内容,而当我给出ID=1时,将返回相应的行。请阅读文档,了解如何处理查询中的参数。