2013-11-03 144 views
3

我有4個EditText字段,用戶將輸入數據。我希望能夠將數據保存到數據庫內部(在設備上)。將數組數據保存到數據庫中

以下是聲明(我的onCreate期間):

String[] debtName = new String[10]; 
double[] debtAmount = new double[10]; 
int[] debtRate = new int[10]; 
double[] debtPayment = new double[10]; 
int trigger = 0; 

後來,我拉的數據從EditTexts(一ButtonOnClick期間):

EditText editDebtName = (EditText) findViewById(R.id.dispDebtName); 
debtName[trigger] = editDebtName.getText().toString(); 

EditText editDebtAmount = (EditText) findViewById(R.id.dispDebtAmount); 
String debtAmountStr = editDebtAmount.getText().toString(); 
debtAmount[trigger] = Double.parseDouble(debtAmountStr); 

EditText editDebtRate = (EditText) findViewById(R.id.dispDebtRate); 
String debtRateStr = editDebtRate.getText().toString(); 
debtRate[trigger] = Integer.parseInt(debtRateStr); 

EditText editDebtPayment = (EditText) findViewById(R.id.dispDebtPayment); 
String debtPaymentStr = editDebtPayment.getText().toString(); 
debtPayment[trigger] = Double.parseDouble(debtPaymentStr); 

我在尋找任何簡單有關如何將這些數據片段保存到數據庫的資源(最好不要解析數據)。

+0

你有你的執行的SQLite數據庫邏輯,如表創建和一些CRUD操作? –

+0

假設我沒有對DB做任何事情。我實際上完全不熟悉他們在Java中..我可以在PHP中操縱一點,但還不足以進行比較。 – jpgerb

回答

1

如果不解析,您將收到的數據將採用CharSequence[]的形式(稍後您可以將其轉換爲字符串toString()方法),並且僅當您不打算對這些整數執行任何操作時和雙打。但是如果你想這樣做,你必須去解析這些值。

檢查developer.android.com此鏈接:http://developer.android.com/training/basics/data-storage/databases.html

還要檢查這些鏈接數據庫教程:

  1. http://www.vogella.com/articles/AndroidSQLite/article.html
  2. http://www.androidhive.info/2011/11/android-sqlite-database-tutorial/
+0

您能否確認 - DB只能保留與sharedpreference相同類型的變量嗎? – jpgerb

+1

Android中的數據庫是SQLite(而不是MySQL作爲您的問題標籤之一)。你可以檢查支持的數據類型[這裏](http://www.sqlite.org/datatype3.html)。但SQLite是[無類型](http://www.sqlite.org/datatypes.html)。 – BornToCode

+0

我已經更新了標籤。 – jpgerb