2016-07-29 167 views
0

我有一个QR码扫描结果,我想从结果中获得一个特定的字符串。如何从二维码扫描得到所需的字符串结果使用ZXING库

例如:如果结果是“ROGS,Hudson,J'kobi,Anderson,Harrison,454242,SAM,HARRY,TIM,JOHN,SAMMY,TONNY,SAMON,GROOD,TOD。

我想从结果字符串中获得名称TONNY。在Android Java代码中,最好的方法是什么?

我当前的代码是如下

public void handleResult(Result rawResult) { 
     // Do something with the result here 

     Log.e("handler", rawResult.getText()); // Prints scan results 
     Log.e("handler", rawResult.getBarcodeFormat().toString()); // Prints the scan format 
AlertDialog.Builder builder = new AlertDialog.Builder(this); 
     builder.setTitle("Scan Result"); 
     builder.setMessage(rawResult.getText()); 
     AlertDialog alert1 = builder.create(); 
     alert1.show(); 

     // If you would like to resume scanning, call this method below: 
     mScannerView.resumeCameraPreview(this); 
} 
+0

是字符串格式始终就像你在例子中显示的一样? –

+0

格式相同。每个名字总是用逗号分隔,但没有名字会保持不同。 –

回答

0

你能不能做一个简单的字符串匹配检查TONNY或任何其他名称?

String required = "TONNY"; 
String result = rawResult.getBarcodeFormat().toString(); 
return result.matches(required) 

编辑:忽略大小写

result.toLowerCase().contains(required.toLowerCase()) 

Check this

EDIT2:为了获得无,拆分结果,并循环

String array[] = result.split(",") 
for(int i=0;i<array.length;i++) 
    if(array[i].equals(required)) 
    return i 
+0

我将有一个附有姓名的号码,所以也是想要那个号码,那个号码将会不同 –