2012-07-05 36 views
-1

這次我跟ZXing有一個新的問題。 O.K我已閱讀了本網站上關於在應用程序中使用ZXing的所有內容,但我很困惑。我寫了我的數據庫應用程序,我想創建一個包含數據的條形碼,即組名,小時和成本,沒有什麼複雜的。我可以在線創建條碼,而不是一個概率。問題是如何從ZXING中的SCAN_RESULTS返回的「內容」中提取組名稱,小時數和成本。從SCAN_RESULTS提取數據ZXing

public void onClick(View v) { 
    // TODO Auto-generated method stub 
    switch (v.getId()) { 
    case R.id.scanButton: 
    Intent intent = new Intent("com.google.zxing.client.android.SCAN"); 
    intent.putExtra("SCAN_MODE", "PRODUCT_MODE"); 
    startActivityForResult(intent, REQUEST_BARCODE); 
    break; 

public void onActivityResult(int requestCode, int resultCode, Intent intent) { 
    if (requestCode == REQUEST_BARCODE) { 
     if (resultCode == RESULT_OK) { 

      //barcode is variable where the string from SCAN_RESULT is stored 
      String barcode = intent.getStringExtra("SCAN_RESULT"); 
      // etName.setText(barcode); 

非常感謝

+2

這將取決於你如何在你的條形碼,你卻忽視了後期的編碼數據,因此實在沒有辦法,我們可以回答。你能舉一個例子說明如何使用在線生成器在條形碼內編碼這些數據嗎?也許發佈一個你正在編碼的典型字符串的樣本。 – FoamyGuy 2012-07-05 20:49:01

+0

嗨,這裏是我如何生成條形碼的簡單例子。我使用代碼128和簡單的字母數字文本「FCE1 1.5 22.50」,FCE1 =組名,1.5 =小時,22.50 =成本。謝謝你看問題 – 2012-07-05 20:54:34

回答

0

如果它是安全的假設,組名稱將永遠不會包含空格,你可以使用String.split()來獲取數據。

是這樣的:

String[] datas = barcode.split(" "); 
String groupName = datas[0]; 
double hours = Double.valueOf(datas[1]); 
double cost = Double.valueOf(datas[2]); 
+0

謝謝肖恩我會試試看看會發生什麼:) – 2012-07-06 05:07:55