zoukankan      html  css  js  c++  java
  • 今天上午完成了业务数据导入到手机,能显示汉字了。

    今天上午完成了业务数据导入到手机,能显示汉字了。

    MainActivity.java 文件内容如下

    package com.strongdady.qrscan;

    import java.util.Arrays;
    import java.util.List;




    import java.io.File;

    import java.io.InputStream;

    import java.io.FileOutputStream;

    import android.database.sqlite.SQLiteDatabase;
    import android.database.Cursor;

    import com.google.zxing.integration.android.IntentIntegrator;
    import com.google.zxing.integration.android.IntentResult;

    import android.widget.Toast;
    import android.content.Intent;



    import android.os.Bundle;
    import android.support.annotation.NonNull;
    import android.support.design.widget.BottomNavigationView;
    import android.support.v7.app.AppCompatActivity;
    import android.view.MenuItem;
    import android.widget.TextView;


    import static android.os.Environment.getExternalStorageDirectory;


    public class MainActivity extends AppCompatActivity {

    private final int BUFFER_SIZE = 400000;
    public static final String DB_NAME = "device.db"; // 保存的数据库文件名称
    public static final String PACKAGE_NAME = "com.strongdady.qrscan";// 应用的包名
    //public static final String DB_PATH = "/data"droid.os.Environment.getDataDirectory().getAbsolutePath()+"/"
    public static final String DB_PATH =getExternalStorageDirectory()+"/data";

    String device_no = "";
    String owner="";
    String register_date = "";
    String device_name = "";
    String sqlString="";
    SQLiteDatabase db=null;
    Cursor cursor;

    private TextView mTextMessage;

    private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
    = new BottomNavigationView.OnNavigationItemSelectedListener() {



    public void copyDBFile()
    {
    mTextMessage.append(DB_PATH);
    try {
    File myDataPath = new File(DB_PATH+"/device_db");
    if (!myDataPath.exists())
    {
    mTextMessage.append("inside copydbfile 20180521=|"+myDataPath.toString()+"|enddbfile");
    myDataPath.mkdirs();// 假设没有这个文件夹,则创建
    }
    else
    {
    mTextMessage.append("inside copydbfile =|"+myDataPath.toString()+"|existed 2018_5-21!");
    }
    String dbfile=myDataPath+"/"+DB_NAME;
    // if (!(new File(dbfile).exists())) {// 推断数据库文件是否存在,若不存在则运行导入,否则直接打开数据库

    if (true) {// 推断数据库文件是否存在,若不存在则运行导入,否则直接打开数据库
    InputStream is =getResources().openRawResource(R.raw.device); // 欲导入的数据库
    FileOutputStream fos = new FileOutputStream(dbfile);
    byte[] buffer = new byte[BUFFER_SIZE];
    int count = 0;
    while ((count = is.read(buffer)) > 0) {
    fos.write(buffer, 0, count);
    }
    fos.close();
    is.close();
    }
    db = SQLiteDatabase.openOrCreateDatabase(dbfile,null);

    } catch (Exception e)
    {
    mTextMessage.append(e.toString());
    }
    }


    @Override
    public boolean onNavigationItemSelected(@NonNull MenuItem item) {

    switch (item.getItemId()) {
    case R.id.navigation_home:
    mTextMessage.setText(R.string.title_home);

    IntentIntegrator integrator=new IntentIntegrator(MainActivity.this);

    //List<String> oDesiredFormats = Arrays.asList("UPC_A,UPC_E,EAN_13,EAN_8,RSS_14,RSS_EXPANDED,CODE_39,CODE_93,CODE_128,ITF,CODABAR,QR_CODE,DATA_MATRIX,PDF_417".split(","));
    List<String> oDesiredFormats = Arrays.asList("PDF_417,UPC_A,UPC_E,EAN_13,EAN_8,RSS_14,RSS_EXPANDED,CODE_39,CODE_93,CODE_128,ITF,CODABAR,QR_CODE,DATA_MATRIX".split(","));

    integrator.setPrompt("scanning .....");
    integrator.initiateScan(oDesiredFormats);

    return true;


    case R.id.navigation_dashboard:
    mTextMessage.setText(R.string.title_dashboard);

    copyDBFile();

    mTextMessage.append(" after open database ");
    if(db!=null)
    mTextMessage.append(" db not null");
    else
    mTextMessage.append(" db is null!!");


    try {
    sqlString="SELECT * FROM device where device_no='1010-2012-000582'";
    cursor = db.rawQuery(sqlString, null);
    }catch (Exception e)
    {
    mTextMessage.append("exceipion e"+e.toString());
    }
    owner="init001";


    while (cursor.moveToNext()) {
    mTextMessage.append("!!!!!!!!!!!!");
    device_name = cursor.getString(cursor.getColumnIndex("device_name"));
    owner = cursor.getString(cursor.getColumnIndex("owner"));
    register_date=cursor.getString(cursor.getColumnIndex("register_date"));
    mTextMessage.append("+here+");
    }

    mTextMessage.append("after cursor!!!"+"sqlstring:"+sqlString);
    mTextMessage.append("owner:"+owner);
    return true;

    case R.id.navigation_notifications:
    mTextMessage.setText(R.string.title_notifications);
    return true;
    }
    return false;
    }
    };

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

    mTextMessage = (TextView) findViewById(R.id.message);
    BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
    navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);

    }

    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
    if (scanResult != null) {


    mTextMessage.setText("设备编号 "+device_no);

    Toast.makeText(this, device_no, Toast.LENGTH_LONG).show();
    //String dbOpenString="/data/data/com.strongdady.qrscan/device.db";
    //String dbOpenString=android.os.Environment.getDataDirectory().getAbsolutePath()+"device.db";

    if (db==null)
    mTextMessage.append("db is null");

    else
    mTextMessage.append("db is ok!");

    cursor = db.rawQuery("SELECT * FROM device where device_no = '1010-2012-000582'", null);


    while (cursor.moveToNext()) {
    device_name = cursor.getString(cursor.getColumnIndex("device_name"));
    owner = cursor.getString(cursor.getColumnIndex("owner"));
    register_date=cursor.getString(cursor.getColumnIndex("register_date"));
    }

    db.close();
    mTextMessage.append("设备名称:"+device_name+owner+register_date);

    }
    else
    {
    //super.onActivityResult(requestCode, resultCode, data);
    return;
    }

    }
    }
  • 相关阅读:
    yum -y list java* 查看当前java的版本
    max number of threads [1024] for user [lish] likely too low, increase to at least [2048]
    max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
    max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
    linux文件描述符open file descriptors与open files的区别
    samba 报错
    检测端口是否开启
    sqlserver2008出现数据库主体在该数据库中拥有架构,无法删除的解决方案
    sqlserver生成表结构文档的方法
    胡萝卜周博客 软件下载
  • 原文地址:https://www.cnblogs.com/strongdady/p/9066389.html
Copyright © 2011-2022 走看看